potatopowered / role-auth
RoleAuth 组件旨在使 CakePHP 3.x 应用程序中的授权尽可能简单。
1.1.2
2018-07-02 23:13 UTC
Requires
- php: >=5.4.16
- cakephp/cakephp: ~3.0
- cakephp/migrations: ~1.0
Requires (Dev)
- cakephp/cakephp-codesniffer: ^3.0
- phpunit/phpunit: ^5.7|^6.0
This package is not auto-updated.
Last update: 2024-09-15 23:21:31 UTC
README
描述
RoleAuth 组件旨在使 CakePHP 3.x 应用程序中的授权尽可能简单。
安装指南
将组件添加到您的 composer.json 文件中,您可以使用 composer 本身轻松完成此操作。
composer require potatopowered/role-auth
使用迁移命令添加角色表。
bin/cake migrations status -p RoleAuth
在 AppController 的初始化函数中将 RoleAuth 组件与其他组件一起加载,以便在所有控制器中都可以访问它。
$this->loadComponent('RoleAuth.RoleAuth');
高级加载
$this->loadComponent('RoleAuth.RoleAuth', [
'roles_table' => 'roles',
'admin_role' => 'Admin',
'default_role' => 'User'
]);
用法
此用法假定您已设置 role_id,该 id 将用户与该插件的角色表链接起来。
检查用户是否为管理员
要使用 RoleAuth 组件检查用户是否为管理员,您可以进行如下调用。以下代码将检查登录用户的 role_id 并验证他们是否为管理员。结果为布尔值。
$this->RoleAuth->isAdmin($this->Auth->user('role_id'));
检查用户是否有特定角色
要使用 RoleAuth 组件检查用户是否具有特定角色,您可以进行如下调用。以下代码将检查登录用户的 role_id 并验证他们是否有角色。结果为布尔值。
$this->RoleAuth->hasRole('YourRole', $this->Auth->user('role_id'));
设置所有角色变量
要使用 RoleAuth 组件检查用户的角色并一次性设置所有角色变量,您可以进行如下调用。以下代码将检查登录用户的 role_id 并验证他们是否有角色。结果为布尔值。
$this->RoleAuth->setRoles($this->Auth->user());