rbac权限管理个人理解

🔋RBAC权限控制
判断一个用户是否对控制器 或者方法 有执行权限 如果多个用户同时拥有权限那么就需要给这些用户 添加一个角色,给角色一个 权限

五张表

用户表 角色表 权限表 用户角色表 角色权限表

用户表

字段名称 字段说明
id 主键自增
name 用户名
passwd 密码
角色表

字段 字段说明
id 主键自增
name 用户角色名称
权限表

字段 字段说明
id 主键自增
name 操作节点的名称
zn_name 节点的中文说明
fun_name 允许访问控制器的方法名
用户角色表

字段 字段说明
user_id 外键关联用户表中的主键ID
role_id 外键 关联角色表中的主键ID
角色权限表

字段 字段说明
role_id 外键 关联用户表中的主键ID
node_id 外键 关联节点中的主键ID
用户输入用户名 密码登陆

通过用户表 进行判断 如果输入错误 重新登录

如果登陆成功 返回用户的ID

得到用户的ID 查找 用户和角色表 查出用户的角色ID

得到角色的ID查找角色和节点表查出用户对那些节点拥有访问权限

把那些权限 放到session中

用户访问某个模块 将session中的权限 与$_GET['a']比较

如果$_GET['a']在session中不存在 给一个提示 你没权限访问

posted @ 2017-07-06 18:16  backkom_jiu  阅读(327)  评论(0编辑  收藏  举报