RBAC权限模型分类

简介: RBAC0实现用户、角色、权限的多对多关系;RBAC1引入角色继承,形成上下级;RBAC2增加静态与动态职责分离,防止权限冲突;RBAC3融合RBAC1与RBAC2,兼具继承与职责分离机制,提升权限管理的安全性与灵活性。(238字)

RBAC0
在RBAC0中,一个用户可以具备多个角色,一个角色可以具备多个权限。如下图
用户表
角色表
1:n​
权限表
1:n​
访问合集
1:n​
1:1​
用户所具备的权限是用户所具备角色的权限合集
RBAC1
RBAC1是在RBAC0的技术基础之上建立的,主要是增加了角色的继承关系,让角色有了上下级。如下图
用户表
角色表
1:n​
权限表
1:n​
访问合集
1:n​
1:1​
用户所具备的权限是用户所具备角色的权限合集
0:n​
RBAC2
RBAC2也是在RBAC0的技术基础之上建立的,引入了静态职责分离和动态职责分离。
角色互斥:在实际项目中有一些角色是互斥的,如财务就不能自己报账自己审批,对于这个角色一般不能和其他角色见人。通过职责分离可以解决这一问题。
静态职责分离:在权限配置阶段就做限制。如同一个用户不能被授予互斥的角色,授予时做互斥判断。
动态职责分离:运行阶段进行限制。如一个用户即使有多个角色,代码也会实时判断其真正有效的角色是几个。
用户表
角色表
1:n​
权限表
1:n​
访问合集
1:n​
1:1​
用户所具备的权限是用户所具备角色的权限合集
静态职责分离


动态职责分离


RBAC3
RBAC3是RBAC1和RBAC2的合体,如下图:
用户表
角色表
1:n​
权限表
1:n​
访问合集
1:n​
1:1​
用户所具备的权限是用户所具备角色的权限合集
静态职责分离


动态职责分离


0:n​

相关文章
|
5月前
|
人工智能 供应链 监控
开发wms系统该具备那些专业能力 低代码实现专业wms系统优势
2026年,WMS已跃升为串联供应链全环节的核心基础设施。本文从定义、技术、功能、行业适配、案例及趋势六大维度,系统解析专业WMS如何通过AI、IoT、低代码等技术实现库存精准管控、作业提效、成本优化与全链协同,助力企业深度数字化转型。
|
存储 Java
【Java技术指南】「原理剖析」synchronized工作原理分析
【Java技术指南】「原理剖析」synchronized工作原理分析
400 0
【Java技术指南】「原理剖析」synchronized工作原理分析
|
8月前
|
安全 数据安全/隐私保护
什么是OAuth2.0
OAuth(开放授权)是一种安全、简易的标准,允许第三方应用在不获取用户账号密码的前提下,获得用户资源授权。OAuth2.0为OAuth的升级版,安全性更高,使用更便捷,但不兼容旧版OAuth1.0。
|
8月前
|
Java 应用服务中间件 微服务
了解spring项目与springboot项目的区别和优缺点
Spring Boot是Spring的增强版,通过自动配置和Starter依赖简化开发,内置服务器支持JAR包直接运行,适合微服务与快速开发;传统Spring项目则更灵活,适合复杂定制场景。二者互补,新项目推荐Spring Boot。
|
8月前
|
XML Java 数据格式
Spring Boot 是什么?—— 简化 Spring 开发的革命性工具
自2002年Spring框架兴起,企业级Java开发迎来变革。但繁重的XML配置、复杂集成与外部容器依赖等问题凸显。2013年,Spring Boot应运而生,以自动配置、起步依赖、内嵌服务器等特性,实现“约定优于配置”,极大提升开发效率。它非替代Spring,而是其现代化加速器,让开发者专注业务,成为微服务与云原生时代的首选基石。
|
5月前
|
安全 数据建模 应用服务中间件
阿里云SSL证书阿里云HTTPS证书阿里云数字证书怎么买、怎么申请、怎么部署?价格 + 申请 + 部署一站式教程
本文详解网站SSL证书配置:对比免费DV证书(适合个人/测试)与付费OV/EV证书(适用企业/金融场景),涵盖有效期、域名支持、验证等级、价格及兼容性差异,并分步指导阿里云平台申请及Nginx服务器部署流程,助程序员快速实现HTTPS安全升级。(239字)
|
11月前
|
JavaScript 前端开发 算法
Vue 3:下一代前端框架的革命性进化
Vue 3:下一代前端框架的革命性进化
586 103
|
存储 自然语言处理 Dubbo
几行代码轻松实现跨系统传递 traceId,再也不用担心对不上日志了!
新项目查日志太麻烦,多台机器之间查来查去,还不知道是不是同一个请求的。打印日志时使用 MDC 在日志上添加一个 traceId,那这个 traceId 如何跨系统传递呢?
1567 0
|
Linux C++
Qt工程pro文件的简单配置(尤其是第三方头文件和库)
Qt开发中,pro文件是对正工程所有源码、编译、资源、目录等的全方位配置的唯一方式,pro文件的编写非常重要,以下对几个重要项进行说明(win和linux,mac平台通用配置) 注释 以”#”开始的行,直到结束 模板变量 告诉qmake生成哪种makefile TEMPLATE = app 1 其中 app -表示该工程建立一个应用程序的makefile。
5146 0