laraditz / permission-plus
为懒惰者设计的Laravel权限管理。
0.0.1
2023-02-24 07:49 UTC
Requires
- php: ^8.0
- illuminate/support: ^8.0||^9.0
Requires (Dev)
- orchestra/testbench: ^6.0
- phpunit/phpunit: ^9.0
This package is auto-updated.
Last update: 2024-09-26 07:34:26 UTC
README
Laravel权限管理,专为懒惰者设计。权限增强是一个RRBAC(基于角色/路由的访问控制),它是一种基于应用程序路由和角色的访问控制方法。(警告:此包仍在开发初期,可能包含错误)。
先决条件
- PHP 8.0+
- Laravel v8.0+
- Spatie Laravel Permission V5
安装
您可以通过composer安装此包
composer require laraditz/permission-plus
如果您还没有,您可能需要创建一个新用户账户以便访问权限增强页面。使用Laravel 入门套件,快速启动您的应用程序。
设置
运行迁移命令以创建必要的数据库表。
php artisan migrate
将HasPermissionPlus
特质添加到您的User
模型中。
use Laraditz\PermissionPlus\Traits\HasPermissionPlus; class User extends Authenticatable { use HasPermissionPlus; }
(可选)您可以通过此命令发布配置文件
php artisan vendor:publish --provider="Laraditz\PermissionPlus\PermissionPlusServiceProvider" --tag="config"
使用方法
登录后,转到/permission-plus/permissions
以管理您的权限,您将看到以下页面。您可能可以点击生成
按钮来生成应用程序中的所有路由以开始添加权限。
如果您添加更多路由,请重复此步骤。
部署到生产环境
默认情况下,所有App\Models\Users
都可以在本地访问权限页面。为了允许他们在生产环境中访问权限页面,您必须采取一些额外步骤以确保只有正确的用户有权访问页面。
要设置您的App\Models\User
以便在非本地环境中访问权限页面,您必须重写canAccessPermissionPlus
方法。
public function canAccessPermissionPlus(): bool { // example return str_ends_with($this->email, '@yourdomain.com') && $this->hasVerifiedEmail(); }
如果您发现任何与安全相关的问题,请通过raditzfarhan@gmail.com发送电子邮件,而不是使用问题跟踪器。
- 待办事项
- 添加搜索
- 添加文档
- 添加测试
- 资源所有者的权限
- 自动检测可用路由
- 创建更友好的用户界面
- 优化移动视图布局
- 为单个用户添加权限
重构代码
composer test
变更日志
请参阅变更日志以获取更多信息。
贡献
请参阅贡献以获取详细信息。
安全性
如果您发现任何与安全相关的问题,请通过raditzfarhan@gmail.com发送电子邮件,而不是使用问题跟踪器。
鸣谢
许可协议
MIT许可(MIT)。有关更多信息,请参阅许可文件。