YII2 advanced 基于 RBAC 的权限管理
一、首先要在 common/config/main.php 中加入如下配置
'authManager' => [
'class' => 'yii\rbac\DbManager',
'itemTable' => 'auth_item',
'assignmentTable' => 'auth_assignment',
'itemChildTable' => 'auth_item_child',
],
二、在 vendor/yiisoft/yii2/rbac/migrations 中找到 …rbac_init.php,并将数据库迁移文件放入 console/migrations 中
三、执行 php yii migrate 生成数据库,生成四个表
yii\rbac\DbManager::$itemTable: 该表存放授权条目(译者注:即角色和权限)。默认表名为 "auth_item" 。
yii\rbac\DbManager::$itemChildTable: 该表存放授权条目的层次关系。默认表名为 "auth_item_child"。
yii\rbac\DbManager::$assignmentTable: 该表存放授权条目对用户的指派情况。默认表名为 "auth_assignment"。
yii\rbac\DbManager::$ruleTable: 该表存放规则。默认表名为 "auth_rule"。
四、权限分配思路
1、建立权限节点
2、建立角色
3、给角色分配权限
4、为用户选择角色
5、验证用户权限
相关链接