效果:“普通管理员”可以进行gii和debug的操作,而“站长”除了可以进行gii和debug的操作,还可以进行“权限控制”的操作。
一、创建“调试”的权限:可以进行 gii 和 degug 的操作![](https://luluqi.cn/images/post/gif/24.gif)
1、点击“路由”,将 /gii/* 、/gii/default/index、/debug/* 、/degug/default/index 写入到 auth_item 表
![](https://luluqi.cn/images/post/2016/07/25/f93486bfff-28.png)
2、点击“权限”,创建名为“调试”的权限,并分配 /gii/* 和 /debug/* 路由
![](https://luluqi.cn/images/post/2016/07/25/3293d98701-29.png)
3、点击“角色”,创建名为“普通管理员”的角色,并分配“调式”的权限
二、创建“调式”的菜单![](https://luluqi.cn/images/post/gif/25.gif)
1、创建
![](https://luluqi.cn/images/post/2016/07/25/ae490cce12-32.png)
gii 菜单:Parent —— 调式;Name —— gii;Route —— /gii/default/index;Order —— 1
debug 菜单:Parent —— 调式;Name —— debug;Route —— /debug/default/index;Order —— 2
2、分配“调式“权限给”站长“角色
![](https://luluqi.cn/images/post/2016/07/25/0292118223-33.png)
3、刷新页面,你会发现左侧导航栏多了调式的菜单
![](https://luluqi.cn/images/post/2016/07/25/787e866530-34.png)
三、创建“普通管理员“角色的新用户![](https://luluqi.cn/images/post/gif/26.gif)
1、进入前台 127.0.0.1/advanced/frontend/web 进行注册新用户
![](https://luluqi.cn/images/post/2016/07/25/15756c350d-31.png)
2、进入后台 127.0.0.1/advanced/backend/web/admin/assignment/index
点击 admin 的查看按钮,为 admin 分配普通管理员的角色
![](https://luluqi.cn/images/post/2016/07/25/aaa80e84ff-35.png)
3、刷新页面,你会发现 admin 用户也多了 调试的菜单
![](https://luluqi.cn/images/post/2016/07/25/b33e197c4f-36.png)
四、rbac 的作用![](https://luluqi.cn/images/post/gif/27.gif)
1、在步骤三、2中 admin 用户通过 输入地址:127.0.0.1/advanced/backend/web/admin/assignment 进入分配角色的页面,现在我们通过配置限制用户访问,配置文件为 backend/main.php
![](https://luluqi.cn/images/post/2016/07/25/45d8a341ba-37.png)
2、现在 admin 用户通过 127.0.0.1/advanced/backend/web/admin/assignment 会出现下面的界面,说明 rbac 成功了
![](https://luluqi.cn/images/post/2016/07/25/48cb136b65-38.png)
3、退出 admin 用户,登录 master 用户,发现 master 可以执行 admin/assignment 操作