RBAC 看起来好高大上 有点不明觉厉 了解后发现 就是权限控制
原来我早接触过类似的东西
SpeedPHP 中的spAcl功能,就是RBAC系统
流程大致如下:
为用户建立用户组 建立权限列表 在吧权限列表(controller , action)和用户组链接起来 访问每个页面时 比对是否有权限(以控制器 和 方法名比对)
YII的RBAC流程是这样的:
auth_item表存储 角色(可以理解为用户组)、任务(任务理解为同个模块的多个操作的集合)、操作 (最小单位 不可再分割)
更值得注意的是 角色、任务、操作都只定义一个名称(并不像Speedphp中的以网址中的控制器和方法名称) 最后以 硬编码输入权限名称的方式 Yii::app()->user->checkAccess('createPost') 判断是否有权限 。因为受之前思想的影响 在这块浪费许久时间
auth_item_child 角色 任务 操作 之间的管理表 (以无限循环的方式)
auth_assignment 用户与角色之间的关系
auth_rule 规则 (你的分组里有这个权限 并且也要符合此规则 比如 只能编辑自己的文章 ) 后期感受下 再补充
posted on
浙公网安备 33010602011771号