RBAC权限设计
2023-06-29 10:54:59 3 举报
AI智能生成
思维导图的方式详细阐述了RBAC的权限设计的知识体系,以及设计方案
作者其他创作
大纲/内容
概念梳理
权限包括什么
功能权限
页面
按钮
菜单
数据权限
基础数据
业务数据
为什么需要
数据安全
岗位职责
业务分工
为什么要“设计”
ACL 传统的基于用户设计权限,是一对多的关系,人员变动之后权限维护困难
RBAC 基于角色,给角色分权限,给用户分角色。能解决大部分场景
RBAC 演进
演进背景
角色太多
角色之间权限存在交叉,或者覆盖
四种模型
1 角色继承,上级具有下级的权限
2 角色限制,不能同时享有两种角色
SSD
角色本身互斥,不能同时拥有
享有这个角色的用户数量限制
DSD
只能选择一种角色在线
3 同时有继承和限制
4 完善的机制
权限组
包含多个权限
角色从对应权限变为对应权限组
角色组
包含多个角色
同一部门层级
分配同角色组或者角色
ABAC 基于环境属性确定的真实权限
用户属性
业务状态属性
环境属性
操作属性
对象属性
权限整体设计
权限体系
某业务系统下的权限管理的集合
文件权限
采用某种权限设计思路
权限设计误区
唯RBAC
选择合适的即可,也不用复杂化
越细越好
简单的小组合能让事情简单很多
自由配置
用户其实不会配置
权限管理设计步骤
梳理角色
梳理业务角色
梳理角色关系
并行
串行
互斥
共享
继承,等级
梳理内在角色,默认有的高频开放角色
梳理隐藏角色,某些不适合开放设置的角色
给特定人去设置
给超管去设置
梳理权限
功能权限
菜单
页面
按钮
数据权限
系统
都能看到
对象
只能看某表
行
只能看到某具体对象(表的某一行)
列
只能看到某具体对象的某些属性值(某一行的某些列)
连接角色与权限
角色与功能权限
角色与数据权限
分析与整理
角色的合并,归属
用户层怎样设置方便
批量设置
批量转让
注销角色
批量更新角色
权限设计三板斧
用户,角色,权限
权限管理
权限树
树的结构设计
后端初始化
角色管理
角色分类
自定义角色
内置角色
角色管理
角色列表
删除角色
角色名称修改
查询
编辑
添加角色
配置角色权限
用户管理
用户列表,支持基本的增删改
新增用户
配置用户角色
部门,职位,菜单
部门管理
单纯承担组织架构
与权限相关
用户组
批量给用户设置角色
承担角色
上下级的权限设计
同等权限
继承权限
职位管理
单纯的员工属性
与权限相关
相当于角色组
产品经理有基本员工,产品助理,项目成员等角色
菜单管理
目录
显示在目录结构中
可作为具体菜单的父级
菜单
具有菜单的基本属性
需要选择一个父级
可以作为父级
可选择是否展示在菜单目录中
按钮
属于某目录或者菜单
注意事项
可以父继承子, 也可以子继承父
部门和职位不建议同时作为角色组,会把问题复杂化
权限组要有可视化的设置位置放在权限树中
版本管理
背景
不同层次用户功能不同
不用产品版本功能不同
以版本概念收纳角色组,权限组
案例
会员层次
免费版
专业版
旗舰版
产品版本
财务系统1.0
财务系统2.0
如何设计数据权限
基于系统
相当于没有
基于对象
利用功能权限即可
具有某功能则确定具有某对象的权限
基于行数据权限
为对象分配数据
无组织架构,给角色权限
有组织架构的,给组织相关人
利用职位管理数据范围
为数据分配对象
把数据给某角色或者部门
常见于文件权限
基于列数据权限
入口
作为角色的操作属性
设置
明细出字段列表,作为可配置项
0 条评论
下一页