RBAC 权限控制详解(一):原理

RBAC 权限控制详解(一):原理

1.RBAC 简介

RBAC 中文名称:基于角色的访问控制

作用:实现访问控制

核心:角色

英文名称:(Role-BasedAccess Control)

2.解释:

一种思想.根据 RBAC 思想进行数据库设计,根据数据库设计更好的完成权限控制.

3.权限控制常用分类:

(1) 菜单功能

(2)url 控制(控制访问不同的控制器.)

(3) 资源可见性控制(页面某些元素对不同用户可见性是不同的 )

4.发展历史:


4.1 最开始


需求:新增一个用户,具有所有菜单可见的功能.

新建一个用户.
在用户-菜单关联表中把所有菜单和用户关联.

RBAC 权限控制详解(一):原理

4.2 使用 rbac 思想进行设计

如果需求确定每个用户只能有一个角色,在用户表中添加外键列,直接应用角色表
如果每个用户可能有多个角色,按照下面进行设计.
需求:新增一个用户,具有所有菜单可见的功能.
项目上线时已经创建了 n 个角色,且不同角色可能看不同的菜单.
新建用户.
在用户-角色表中添加用户和角色的关系.

RBAC 权限控制详解(一):原理

4.3 RBAC2.0

随着项目规模变大.RBAC2.0
角色组表. 用户组和角色组进行管理.

RBAC 权限控制详解(一):原理