[知了堂学习笔记]_EasyUi快速搭建一个权限管理的模块(1)--RBAC概述和数据库设计
来源:互联网 发布:东北林大网络教学平台 编辑:程序博客网 时间:2024/06/05 23:41
一 、前言
这几篇连载的博客主要介绍了通过easyUI插件快速的搭建一个权限管理模块,主要针对开始学习权限管理读者。
用到的技术点很简单,简单的easyUI插件的使用。
权限:对资源的控制,对应到web应用就是对URL的控制。目前的所使用的所有系统,基本上都会使用到权限管理模块,只不过不同系统的权限管理的模块复杂程度不相同而已。现在我们在用的权限模型基本上都是以RBAC为基础进行扩展,所以针对权限我做了一个简单的通过EasyUI插件快速搭建的模块,帮助读者快速的理解权限管理模块的原理。理解之后, 在继续学习使用Shiro的时候,就更容易理解。
二、RBAC权限管理概述
RBAC(Role-Based Access Control,基于角色的访问控制),就是用户通过角色与权限进行关联。简单地说,一个用户拥有若干角色,每一个角色拥有若干权限。这样,就构造成“用户-角色-权限”的授权模型。在这种模型中,用户与角色之间,角色与权限之间,一般者是多对多的关系。
针对上面的这张图,在做一个简单的阐述:通过这个图我们可以理解RBAC模型的原理。
在权限管理中,有一个很重要的中间对应关系,那就是角色,不同的系统中,不同的角色。例如:超级管理员,教师,学生等。然后每个角色可以通过数据库中的一个角色权限关联表,将角色和权限关联起来。
这样就可以达到一个效果,不同的角色对应不同的权限。这一点必须理解到。
有了角色和权限的对应关系之后,我们在通过一个用户角色关联表,将用户和角色关联起来。
通过这样的方式,就可以达到 用户–>对应角色 –>在对应到权限。那么每个用户就可以根据它的角色,然后可以知道每个用户具有那些权限。
三、权限管理模块的数据库设计
有了前面的理论之后,对应这RBAC权限模型,我们对应的数据库中应该有五张表。我们具体直接看图:
1、权限表。(t_auth)
2、角色表(t_role)
3、用户表(t_user)
4、角色与权限的关联表(t_authrole)
5、用户与角色关联表(t_authrole)
通过这样的数据库设计,就可以达到简单的一个用户通过用户与角色关联表对应到角色,然后角色通过角色与权限关联表对应到权限,就可以实现每个用户对应不同的权限。
阅读全文
1 0
- [知了堂学习笔记]_EasyUi快速搭建一个权限管理的模块(1)--RBAC概述和数据库设计
- [知了堂学习笔记]_EasyUi快速搭建一个权限管理的模块(3)--菜单树效果的实现
- [知了堂学习笔记]_EasyUi快速搭建一个权限管理的模块(2)--界面效果以及如何做出菜单树效果
- 基于角色的权限管理数据库设计(RBAC)
- 基于角色的权限管理数据库设计(RBAC)
- Rbac权限管理模块设计逻辑思路
- RBAC权限管理设计
- 数据库 RBAC权限管理
- yii2 rbac权限管理学习笔记
- RBAC权限管理系统的设计
- 一个权限管理模块的设计
- ThinkPHP学习笔记(十九)权限管理的实现方式RBAC
- 员工管理系统之RBAC权限管理数据库设计
- Java笔记--权限管理(RBAC)
- [知了堂学习笔记]_mybatis_02如何快速搭建mybatis框架之一
- [知了堂学习笔记]_mybatis_03如何快速搭建mybatis框架之二
- [知了堂学习笔记]_jQuery入门和jQuery的选择器
- RBAC权限管理表设计
- 语音口令红包软件系统开发
- Influxdb自定义数据采样(CQ)
- 数据库的备份与恢复
- 面试集锦
- java读入一个不确定长度的一维数组
- [知了堂学习笔记]_EasyUi快速搭建一个权限管理的模块(1)--RBAC概述和数据库设计
- java面向对象
- hdoj 1856 More is better 【并查集 求最大节点数】
- kali终端快捷键-如何给kali linux终端添加快捷键
- 【Android】AlertDialog对话框
- jQuery中css()源码分析
- Qt学习——分割窗口QSplitter类
- AVL树
- 连续子数组最大和