本篇内容介绍了“RBAC权限控制的实现原理”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大免费主机域名家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成! 免费主机域名 RBAC是英文Role-based Access Control的首字母缩写,中文意思是基础角色的权限控制,它是一种思想,根据 RBAC 思想进行数据表设计,更好的完成不同角色的对应的权限控制。 如何使用RBAC思想进行数据表的设计 如果我们的项目允许一个后台管理用户可能有1个或者2个及2个以上的多个角色,按照下面进行设计: 权限菜单表,角色表,用户表是互相独立的。设计表的顺序是权限菜单表,角色表,用户表,用户-角色关联表。 1. 首先是权限菜单表设计如下:
注意:权限菜单可以是多级菜单,添加pid字段,方便无限极递归分类。 2. 角色表设计如下: 3. 用户表设计如下:
4. 最后是用户-角色关联表设计如下:
当超级管理员在后台需要添加新用户时,不仅需要insert数据进用户表,也需要在用户-角色表中添加用户和角色的关系。与之对应,删除用户时,也需要将用户-角色表中对应的用户-角色关系删除。
这样以来我们根据用户登录以后session中储存的uid判断当前登录用户的身份信息,根据获取到的uid查询用户-角色关联表查询到用户的角色id, 然后到角色表获取到该用户可操作的权限菜单。
封装中间控制器Common.phplibAuth;/**权限认证类**/
这样就能实现路由操作权限的实时检测,比如我们让首页控制器继承中间控制器:
最终实现的效果如图:
“RBAC权限控制的实现原理”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注云技术网站,小编将为大家输出更多高质量的实用文章!
相关推荐: sqlserver中获取字符串中汉字的个数的sql语句
本篇内容主要讲解“sqlserver中获取字符串中汉字的个数的sql语句”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“sqlserver中获取字符串中汉字的个数的sql语句”吧!原理其实免费主机域名很简单, 知识1…