zainburfat/rbac
Composer 安装命令:
composer require zainburfat/rbac
包简介
This package allows you to manage user permissions and roles in a database and authentication and authorization
README 文档
README
Laravel - Role Based Access Control
Custom Route Wise Access Control
This package allows you to manage user permissions and roles in a database and Authentication and Authorization
- Custom RBAC user based roles and permissions package
- Custom RBAC provides flexibility to use Laravel/Passport in a manner of minutes.
Prerequisites
Commands
composer require zainburfat/rbac
Run migrations:
php artisan migrate
Install Passport:
php artisan passport:install
Use trait in the "User" model:
use HasApiTokens use UserPermissionTrait
To exclude some methods/class from creating permissions of them just add "@exclude-permission" in the docs block of class/method you want to exclude.
/** *... *@exclude-permission *... */ class SomeController extends Controller { /** *... *@exclude-permission *... */ public function index() { ... } }
Permissions are created dynamically through command according to the controllers having methods:
php artisan create:permission
Define an api authentication guard and set the driver option to passport in config/auth.php:
'guards' => [ 'web' => [ 'driver' => 'session', 'provider' => 'users', ], 'api' => [ 'driver' => 'passport', 'provider' => 'users', ], ],
Publish config file
php artisan vendor:publish --tag=custom-rbac
Set token expirations inside config\customrbac.php:
'tokensExpireIn' => now()->addDays(15), 'refreshTokensExpireIn' => now()->addDays(30), 'personalAccessTokensExpireIn' => now()->addMonths(6)
Use PermissionsApi middleware to authorize user to specific Api route and for web routes use PermissionsWeb middleware
app/http/kernel.php under protected $routeMiddleware:
'permissionsApi' => \Zainburfat\Rbac\Middleware\PermissionsApi::class, 'permissionsWeb' => \Zainburfat\Rbac\Middleware\PermissionsWeb::class,
Login and register using package's route
For Login use paramenters ('email', 'passport')
For Register use paramenters ('name', 'email', 'passport')
http://yourdomain/rbac_login http://yourdomain/rbac_register
zainburfat/rbac 适用场景与选型建议
zainburfat/rbac 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 5 次下载、GitHub Stars 达 0, 最近一次更新时间为 2023 年 01 月 17 日, 在 PHP 生态内属于活跃度较高的组件。
我们在过去多个企业项目中使用过 zainburfat/rbac 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 zainburfat/rbac 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
统计信息
- 总下载量: 5
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 7
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2023-01-17