用户权限设计-基于RBAC模型

前言

关于权限(数据 操作)的设计比较复杂, 应按各业务场景分析设计
以下讨论的是通用的部分原则

1. 什么是RBAC

RBAC目前使用最为广泛的权限模型
RBAC(基于角色的权限控制)模型的核心是在用户和权限之间引入了角色的概念,取消了用户和权限的直接关联,改为通过用户关联角色、角色关联权限的方法来间接地赋予用户权限,从而达到用户和权限解耦的目的。

				**用户      ->    角色     ->   权限**

RBAC权限的过程可以抽象概括为:判断【Who是否可以对What进行How的访问操作(Operator)】这个逻辑表达式的值是否为True的求解过程。
即将权限问题转换为Who、What、How的问题,需要定义的是角色、资源和行为。
需要考虑:
系统有哪些用户,可以分为哪些角色;
系统有哪些功能(资源)需要按权限来划分;
功能(资源)的拆分粒度,到页面还是到具体按钮操作;
新用户的默认角色和权限;
用户与角色是“多对一”还是“多对多”;
新增的功能是默认全部角色“可用”还是“不可用”;

这些都是比较细节的问题
系统扩展时,还有用户组 ,角色组,权限组等

优点

	1. 职能划分更谨慎。对于角色的权限调整不仅仅只影响单个用户,而是会影响关联此角色的所有用户,管理员下发/回收权限会更为谨慎;
	2. 便于权限管理。对于批量的用户权限调整,只需调整用户关联的角色权限即可,无需对每一个用户都进行权限调整,既大幅提升权限调整的效率,又降低漏调权限的概率;

在这里插入图片描述

目前主要有以下几个版本:(整体又叫做RBAC9

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值