1.RBAC概念和原理

         RBAC:全称叫做Role-Based Access Control,中文翻译叫做基于角色的访问控制。其主要的作用是实现项目的权限控制。

          效果:让不同的管理员,能够访问的页面不一样。比如运营人员 只能看到运营相关模块。财务人员只能看到财务相关模块。

          传统权限管理:

  RBAC权限管理:

RBAC权限管理:

           权限的管理相对规范,角色拥有的权限可以按照一定标准定义好。

           新增管理员,只需要指定角色,即可拥有对应的权限。

 2.数据表设计:

基本数据表:管理员表、角色表、权限表

           对应关系:管理员对应一个角色,一个角色对应多个权限。(一个管理员也可以对应多个角色)

           对应关系的维护:

           第一种:三表结构,在管理员表增加角色id字段,在角色表增加权限ids字段,最终三张表。

           第二种:五表结构,新增一张管理员角色关联表,新增一张角色权限关联表。最终五张表。

这里以三表结构为例: 

           查询一个管理员拥有的权限:

           先查询管理员表,获取到角色id

           再查询角色表,获取到拥有的权限ids

           最后根据权限ids查询权限表,where id in(1,2,3)

最新文章

  1. rootkit后门检查工具RKHunter
  2. Spring mvc Controller接口
  3. 文件大小K、M、G、T
  4. 安装fast cgi
  5. C++基础-02
  6. springmvc中RequestMapping的解析
  7. @Resource注解
  8. APUE第4章 文件和目录
  9. Kruskal
  10. Codeforces 719 E. Sasha and Array (线段树+矩阵运算)
  11. Delphi XE5 for Android(十一篇)
  12. CentOS7 PostgreSQL 主从配置( 二)
  13. Runtime的理解与实践
  14. Linux上程序调试的基石(2)--GDB
  15. 微信小程序 刷新当前页面
  16. 【原】通过AOP实现MyBatis多数据源的动态切换
  17. Dijstra算法求最短路径
  18. JavaScript之数值计算
  19. SVM较全面介绍,干货!(转载)
  20. 最优比率生成树 POJ 2728 迭代或者二分

热门文章

  1. ssh服务介绍及配置
  2. 我的chrome 智能扩展插件copier开源了!!!
  3. C#线程学习笔记八:async & await入门一
  4. Yii2 框架跑脚本时内存泄漏问题分析
  5. Android动态添加碎片
  6. RMAN备份数据库与表空间
  7. YII2中andWhere多个or查询
  8. Jenkins之自动部署、代码安全扫描、自动化接口测试
  9. Spring 常犯的十大错误,(收藏后)永远不要在犯了
  10. 关联mysql失败_Server returns invalid timezone. Go to 'Advanced' tab and set 'serverTimezon'