🔧RBAC权限系统
本系统为管理后台的权限系统,本系统的意图是让站长可以安全,便捷,明确的给予不同管理人员对应的权限来帮助管理。
角色 - Role
面板自带:超级管理员 - Super Admin
请勿修改!
超级管理员:如其名,检查角色是否有操作权限时,会自动判断为有权限!即该角色有面板的全部权限;与原先用户编辑中的是否是管理选项相当! 注意:给这个角色添加权限属于鸡助行为!因为该角色默认所有权限时直接在后台处理文件中赋予的!
原则:一人可饰多角
权限 - Permission
每一个权限都有其对应管理范围;
原则:一角可有多权
权限行为
面板自带权限行为可参考:https://demo.proxypanel.ml/admin/permission
一下我们将解释如何看待/运用面板的权限!
基础 (小白必看)
权限是怎么划分出来的?
本项目权限基于管理路由(直观点 就是访问的网页链接&请求方法)的权限,来判断用户是否有权访问/修改。
例:
在【权限行为列表
】页面中,你可以看到admin.aff.index
,其名称为:【推广系统】提现管理列表
通俗点表示https://demo.proxypanel.ml/admin/aff 这个页面的访问权。
相似的行为有什么快速区分的方法吗?
以admin.goods.create,store
为例,admin.goods.
为路径,create,store
为行为;两者以最后一个·点
为分界线;其中行为中 ,逗号
为和 &
的意思。
后缀 | 通常意味着 |
index | 访问xx的页面、列表 |
create | 访问xx的添加页面 |
store | 将添加页面中内容添加至数据库的操作 |
show | 访问xx中xxx的详细内容 |
edit | 访问编辑页面 |
update | 将编辑页面中内容保存至数据库的操作 |
* | 该路径全部权限; |
其他 |
注意:admin.goods.*
等于 admin.goods
;无论admin.goods
的·点
之后带什么,它都包含其权限!
例:admin.goods.* = admin.goods > admin.goods.items > admin.goods.items.index,create > admin.goods.items.index
进阶
按照行为,我们认为访问编辑页面和编辑操作
,添加页面和添加操作
为并列行为,所以面板提供的默认行为列表是合并在一起的,你可以通过上面的讲解,以及参考其他行为书写形式进行拆分或兼并。
更多权限行为依据
使用ssh,在网站的根目录下,运行
以上指令,可以让你看到网站使用的完整路由/链接列表。出现的表格中,URI为链接格式,name为路由名称,也是权限中的行为。
注意:本系统只对管理面板,即后台,有效。对用户所使用的前端是不带任何作用。一般管理的路由名称以admin.
开头!
特殊权限
名称 | 描述 |
【用户系统】赋予角色权限 give roles | 给予用户角色的操作, 拥有这个权限的角色可以赋予其他用户,其所拥有的角色。 |
更多建议,请开issue并详细描述想法,使用场景等,请求开发者考虑/添加。
最后更新于