potatopowered/role-auth

RoleAuth 组件旨在使 CakePHP 3.x 应用程序中的授权尽可能简单。

安装: 22

依赖: 0

建议者: 0

安全: 0

星标: 0

关注者: 4

分支: 0

开放问题: 0

类型:cakephp-plugin

1.1.2 2018-07-02 23:13 UTC

This package is not auto-updated.

Last update: 2024-09-15 23:21:31 UTC


README

Software License Travis Codecov Packagist

描述

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());