【权限管理】RBAC 和 ABAC的对比

2024-08-27 11:36
文章标签 管理 权限 对比 rbac abac

本文主要是介绍【权限管理】RBAC 和 ABAC的对比,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

RBAC 和 ABAC的对比

  • RBAC
    • 三个组成部分
    • 使用
    • 优缺点
  • ABAC
    • 属性
    • 访问策略示例
    • 优缺点
  • RBAC 和 ABAC的对比

RBAC

基于角色的访问控制(role-based access control RBAC)
在这里插入图片描述

三个组成部分

  • 用户
  • 角色
  • 权限

使用

  • 当用户访问系统时,根据用户具备什么角色,允许用户访问哪些菜单、允许访问那些资源。
  • 需要创建拥有不同权限组合的不同角色,比如A角色具有xx权限,B角色拥有yy权限。
  • 需要授予用户权限时,直接授予用户某个角色。
  • 当用户访问系统的某项资源时,如果具备相应的角色,那么系统认为可以访问。

在这里插入图片描述

优缺点

优点:

  • 便于职责的分离
  • 授权方便

缺点:

  • 新增资源时,需要维护所有相关的角色
  • 只能根据静态的参数进行判断

ABAC

基于属性的访问控制(attribute-based access control ABAC)
在这里插入图片描述

当用户访问系统时,根据用户请求时具备的属性,允许用户访问哪些菜单、允许访问那些资源。

属性

属性包括:

  • 用户属性:比如用户的职级、组织、角色。
  • 环境属性:比如访问的时间、访问的IP。
  • 资源属性:比如资源的创建日期、资源的敏感性。
  • 操作属性:增删改查

访问策略示例

当用户请求系统时,根据当前的属性,指定不同的访问策略:

  • 下班时间,不允许访问公司网络,或需要进一步校验身份。
  • 根据职级 + 资源敏感性,确定用户是否有访问权限。
  • 根据职级 + 职位 + 是否在公司内网, 决定用户是否可以下载代码。

在这里插入图片描述

优缺点

优点:

  • 更加灵活,控制更加细粒度,且根据上下文动态执行
  • 新增资源时,只需要维护较少的资源

缺点:

  • 模型构建相对复杂

RBAC 和 ABAC的对比

RBACABAC
基于角色基于属性
根据角色直接具有某些权限根据访问时属性,动态决定是否具有访问权限
新增资源较繁琐新增资源简单
模型简单模型复杂

【仅代表作者个人观点,欢迎大家讨论自己的理解,如有错误,欢迎指正!】


【如果对你有所帮助,希望可以点赞收藏支持一下!】

这篇关于【权限管理】RBAC 和 ABAC的对比的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1111552

相关文章

高效管理你的Linux系统: Debian操作系统常用命令指南

《高效管理你的Linux系统:Debian操作系统常用命令指南》在Debian操作系统中,了解和掌握常用命令对于提高工作效率和系统管理至关重要,本文将详细介绍Debian的常用命令,帮助读者更好地使... Debian是一个流行的linux发行版,它以其稳定性、强大的软件包管理和丰富的社区资源而闻名。在使用

Linux中chmod权限设置方式

《Linux中chmod权限设置方式》本文介绍了Linux系统中文件和目录权限的设置方法,包括chmod、chown和chgrp命令的使用,以及权限模式和符号模式的详细说明,通过这些命令,用户可以灵活... 目录设置基本权限命令:chmod1、权限介绍2、chmod命令常见用法和示例3、文件权限详解4、ch

锐捷和腾达哪个好? 两个品牌路由器对比分析

《锐捷和腾达哪个好?两个品牌路由器对比分析》在选择路由器时,Tenda和锐捷都是备受关注的品牌,各自有独特的产品特点和市场定位,选择哪个品牌的路由器更合适,实际上取决于你的具体需求和使用场景,我们从... 在选购路由器时,锐捷和腾达都是市场上备受关注的品牌,但它们的定位和特点却有所不同。锐捷更偏向企业级和专

SpringBoot使用minio进行文件管理的流程步骤

《SpringBoot使用minio进行文件管理的流程步骤》MinIO是一个高性能的对象存储系统,兼容AmazonS3API,该软件设计用于处理非结构化数据,如图片、视频、日志文件以及备份数据等,本文... 目录一、拉取minio镜像二、创建配置文件和上传文件的目录三、启动容器四、浏览器登录 minio五、

什么是 Ubuntu LTS?Ubuntu LTS和普通版本区别对比

《什么是UbuntuLTS?UbuntuLTS和普通版本区别对比》UbuntuLTS是Ubuntu操作系统的一个特殊版本,旨在提供更长时间的支持和稳定性,与常规的Ubuntu版本相比,LTS版... 如果你正打算安装 Ubuntu 系统,可能会被「LTS 版本」和「普通版本」给搞得一头雾水吧?尤其是对于刚入

TP-LINK/水星和hasivo交换机怎么选? 三款网管交换机系统功能对比

《TP-LINK/水星和hasivo交换机怎么选?三款网管交换机系统功能对比》今天选了三款都是”8+1″的2.5G网管交换机,分别是TP-LINK水星和hasivo交换机,该怎么选呢?这些交换机功... TP-LINK、水星和hasivo这三台交换机都是”8+1″的2.5G网管交换机,我手里的China编程has

IDEA中的Kafka管理神器详解

《IDEA中的Kafka管理神器详解》这款基于IDEA插件实现的Kafka管理工具,能够在本地IDE环境中直接运行,简化了设置流程,为开发者提供了更加紧密集成、高效且直观的Kafka操作体验... 目录免安装:IDEA中的Kafka管理神器!简介安装必要的插件创建 Kafka 连接第一步:创建连接第二步:选

Mybatis拦截器如何实现数据权限过滤

《Mybatis拦截器如何实现数据权限过滤》本文介绍了MyBatis拦截器的使用,通过实现Interceptor接口对SQL进行处理,实现数据权限过滤功能,通过在本地线程变量中存储数据权限相关信息,并... 目录背景基础知识MyBATis 拦截器介绍代码实战总结背景现在的项目负责人去年年底离职,导致前期规

Spring Security 基于表达式的权限控制

前言 spring security 3.0已经可以使用spring el表达式来控制授权,允许在表达式中使用复杂的布尔逻辑来控制访问的权限。 常见的表达式 Spring Security可用表达式对象的基类是SecurityExpressionRoot。 表达式描述hasRole([role])用户拥有制定的角色时返回true (Spring security默认会带有ROLE_前缀),去

综合安防管理平台LntonAIServer视频监控汇聚抖动检测算法优势

LntonAIServer视频质量诊断功能中的抖动检测是一个专门针对视频稳定性进行分析的功能。抖动通常是指视频帧之间的不必要运动,这种运动可能是由于摄像机的移动、传输中的错误或编解码问题导致的。抖动检测对于确保视频内容的平滑性和观看体验至关重要。 优势 1. 提高图像质量 - 清晰度提升:减少抖动,提高图像的清晰度和细节表现力,使得监控画面更加真实可信。 - 细节增强:在低光条件下,抖