quillphp / casbin
Casbin RBAC/ABAC authorization for the Quill PHP framework
dev-main
2026-04-06 10:01 UTC
Requires
- php: ^8.3
- casbin/casbin: ^3.0
- quillphp/quill: ^0.0.2
Requires (Dev)
- phpunit/phpunit: ^11.0
This package is auto-updated.
Last update: 2026-04-06 11:58:15 UTC
README
Industrial-strength RBAC/ABAC authorization middleware for the Quill PHP Framework. Powered by PHP-Casbin.
Installation
composer require quillphp/casbin
Usage
use Quill\Casbin\Casbin; $app->use(Casbin::new([ 'model' => __DIR__ . '/model.conf', 'adapter' => __DIR__ . '/policy.csv', ]));
Configuration
| Option | Default | Description |
|---|---|---|
| `enforcer` | `null` | Required. An instance of `Casbin\Enforcer`. |
| `sub_resolver` | `fn(Request $r) => $r->get('user') ?? 'anonymous'` | Resolves the Subject from the request. |
| `obj_resolver` | `fn(Request $r) => $r->path()` | Resolves the Object from the request. |
| `act_resolver` | `fn(Request $r) => $r->method()` | Resolves the Action (HTTP method) from the request. |
| `error_code` | `403` | HTTP status code for access denied. |
| `error_message` | `'Forbidden: You do not have permission to access this resource'` | Error message for access denied. |
License
MIT