0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

ACL、RBAC、ABAC三大权限管理模型,到底怎么选?

芯盾时代 来源:芯盾时代 2023-04-24 09:20 次阅读

多年以后,面对IAM后台,运维小李将会想起师父带他去见识权限管理的那个遥远的下午。当时,公司是个二十多个员工的小企业,一个个业务应用都有独立后台,管理简单,每个应用一个访问控制列表,列表里写明了员工的账号和权限,像图书馆的借书记录。 后来,公司的员工越来越多,业务应用越来越多。小李开始创建用户组,给员工分配角色,权限管理工作量越来越大。再后来,小李了解到有种权限管理模型叫ABAC,又开始研究如何给应用配置访问控制,工作量进一步攀升。小李有些迷茫,模型越来越先进,但权限管理却越来越复杂,到底怎么搞才能让权限管理又精细又准确、又便利又安全?

三大权限管理模型怎么选?

想弄清小李遇到的难题,先要厘清权限管理的目的。权限管理,是为了让用户可以访问而且只能访问自己被授权的资源,不能多也不能少。这个目的需要借助各种权限管理模型来实现。ACL(访问控制列表)是率先登场的权限管理模型。它的概念很简单,每一个需要被访问控制机制保护的资源对象(称为客体)都维持一个独立的关联映射表,其中记录了对该客体进行访问的实体(称为主体)被授予访问客体的权限,以及允许对客体执行哪些操作。当主体试图访问客体时,系统会检查映射表,确定是否允许访问。

139ba970-e017-11ed-bfe3-dac502259ad0.png

以图书馆为例,ACL相当于在每本书上都附了一张借阅许可清单,列出了每一个有权限借书的人,以及他们可以借阅的时间。这种方式简单实用,却存在两大问题,一是每次访问时都必须检查客体的ACL,会耗费一定资源;二来大用户量、多业务应用的环境下,ACL的添加、删除和更改比较复杂,容易出现错误。RBAC(基于角色的访问控制)是比ACL更新的权限管理模型。它采用了可分配给主体具有特定权限集的预定义角色,访问权限由为个体分配角色的人提前定义,最终由客体属主在确定角色权限时明确。在处理访问请求时,系统会评估主体的角色以及角色对应的权限,生成访问控制策略。

13bb856a-e017-11ed-bfe3-dac502259ad0.jpg

还是以图书馆为例,RBAC相当于给每一个借书人分配了“学生”、“老师”、“某课题组成员”等不同的角色,“学生”可以借10本书,“老师”可以借20本书,“某课题组成员”可以借阅与课题有关的所有书籍。在企业内部,角色可以以级别、部门、项目等维度定义,一个员工可以有多个角色。相比ACL,RBAC能够借助中间件实现对多个系统和资源访问权限的集中管理,简化了权限管理流程,使得权限管理更规范、更便捷。 RBAC相比ACL更适应多用户、多应用、多资源的大型组织,但它的授权粒度只到角色组,难以对具体的个体实施细粒度的访问控制。为了弥补这个缺陷,ABAC模型(基于属性的访问控制)应运而生。与RBAC不同,其访问控制决策不再以单一的角色为依据,而是基于一组与请求者、环境和/或资源本身相关的特征或属性。在ABAC模型中,系统将权限直接分配给访问主体。当主体请求访问后,ABAC引擎通过检查与访问请求相关的各种属性值,基于预设的访问控制策略,确定允许或拒绝访问。

13d0b2e6-e017-11ed-bfe3-dac502259ad0.jpg

如果应用了ABAC,图书馆的借阅管理将更加精细、灵活,比如“老师”平时可以同时借20本书,寒暑假只能借10本,“学生”在假期不能借书,“某课题组成员”如果假期留校仍可无限量借书,离校则不能借书。在ABAC模型中,企业可以基于时间、地点、IP、设备、网络操作系统、风险级别等属性制定不同的访问控制策略,实现细粒度的权限管理和动态访问控制,几乎能满足所有类型的需求,是真正的“高级货”。

芯盾时代IAM,三种模型按需选择

面对三种权限管理模型,很多企业会陷入选择困难症,因为每一种模型都有各自的优缺点,都难以解决企业所有的权限管理问题。对此,芯盾时代的IAM产品经理表示,小孩子才做选择题,成年人当然全都要。芯盾时代用户身份与访问管理平台(IAM)把三种授权模型全部安排上,企业可以基于自身人员规模、业务规模,资源的重要程度、访问场景匹配适合的权限管理模型:

13eb8512-e017-11ed-bfe3-dac502259ad0.png

1.针对只对特殊用户开放的特殊资源,采用ACL模型管理访问权限,人工管理访问权限,权限具体到人,实现对特殊应用、特殊用户的精准权限管理; 2.针对重要程度一般、访问场景简单、访问人数多的资源,采用RBAC模型,以角色区分访问权限,实现应用的自动化授权,简化权限管理工作的同时保证安全性; 3.针对重要程度高、访问场景复杂的资源,采用ABAC模型,全面、精准的定义、维护各种属性,灵活的设置访问控制策略,进行细粒度的访问权限管理和动态访问控制,在提升资源安全性的同时保证访问的便利性。

140eb67c-e017-11ed-bfe3-dac502259ad0.png

借助芯盾时代IAM,企业能够一站式的建立完善的权限管理体系,分类、分级管理资源访问的权限管理,并通过用户自动授权、自助申请权限简化权限管理流程,形成完整的自动化授权与账号管理体系,实现业务应用的统一权限管理。 统一的权限管理只是芯盾时代IAM四大核心功能之一,它与其它三大功能一起,为企业构建规范的统一身份管理平台:

143264fa-e017-11ed-bfe3-dac502259ad0.png

1.统一身份管理:芯盾时代IAM能够整合企业零散的组织用户数据,为用户生成唯一可信的数字身份标识,实现用户用户、权限、应用账号自动化流转机制,建立身份安全基线,为各种权限管理模型的实现提供可信的身份信息;2.统一身份认证:芯盾时代IAM依托移动安全核心技术,将认证能力拓展到设备层面,提供应用统一门户、单点登录、免密认证能力,支持传统认证、移动认证、社交认证、生物认证、证书认证等技术,在ABAC授权模式下提供多种二次认证方式,保证访问控制策略的有效性和便捷性;3.统一审计管理:芯盾时代IAM利用零信任模型、流式计算技术、规则引擎技术,实现对管理员操作行为、用户登录认证行为、用户应用访问行为的风险审计与动态访问控制功能。 有了芯盾时代IAM,老板再也不用担心公司的访问权限管理,企业业务更加安全、员工操作更加便利、运维工作更加简单。

审核编辑 :李倩

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 核心技术
    +关注

    关注

    4

    文章

    619

    浏览量

    19398
  • ACL
    ACL
    +关注

    关注

    0

    文章

    59

    浏览量

    11875
  • 芯盾时代
    +关注

    关注

    0

    文章

    159

    浏览量

    1733

原文标题:IAM中的“权限管理”丨ACL、RBAC、ABAC三大权限管理模型,到底怎么选?

文章出处:【微信号:trusfort,微信公众号:芯盾时代】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    鸿蒙原生应用元服务开发-Web管理位置权限

    Web组件提供位置权限管理能力。开发者可以通过onGeolocationShow()接口对某个网站进行位置权限管理。Web组件根据接口响应结果,决定是否赋予前端页面
    发表于 04-28 16:57

    鸿蒙原生应用元服务-访问控制(权限)开发应用权限列表

    ohos.permission.ACCESS_DLP_FILE 允许对DLP文件进行权限配置和管理权限级别 :system_core 授权方式 :system_grant ACL
    发表于 04-25 16:12

    鸿蒙原生应用元服务-访问控制(权限)开发应用权限列表二

    允许应用程序获取当前设备正在播放的媒体资源,并对其进行管理权限级别 :system_basic 授权方式 :system_grant ACL使能 :TRUE
    发表于 04-24 15:43

    鸿蒙原生应用元服务-访问控制(权限)开发应用权限列表一

    ACL使能 :TRUE ohos.permission.DOWNLOAD_SESSION_MANAGER 允许应用管理下载任务会话。 权限级别 :system_core 授权方式
    发表于 04-23 14:33

    鸿蒙原生应用元服务-访问控制(权限)开发场景与权限声明

    。 说明 :当申请的权限为user_grant权限时,此字段必填。 abilities 否 标识需要使用到该权限的Ability,标签为数组形式。 适用模型 :Stage
    发表于 04-16 14:40

    AWTK 开源串口屏开发(9) - 用户和权限管理

    在AWTK串口屏中,内置用户管理权限控制的模型,无需编码即可实现登录、登出、修改密码、权限控制、创建用户、删除用户等功能,本文介绍一下用户管理
    的头像 发表于 02-19 12:10 191次阅读
    AWTK 开源串口屏开发(9) - 用户和<b class='flag-5'>权限</b><b class='flag-5'>管理</b>

    一分钟了解鸿蒙OS 应用权限管理

    HarmonyOS 中所有的应用均在应用沙盒内运行。默认情况下,应用只能访问有限的系统资源,系统负责管理应用对资源的访问权限。 应用权限管理是由接口提供方(Ability)、接口使用方
    的头像 发表于 01-26 15:23 318次阅读

    Kubernetes RBAC:掌握权限管理的精髓

    Kubernetes RBAC(Role-Based Access Control)是 Kubernetes 中一项关键的安全功能,它通过细粒度的权限控制机制,确保集群资源仅被授权的用户或服务账号访问。
    的头像 发表于 12-25 09:43 201次阅读

    oracle系统权限和对象权限的区别

    权限和对象权限的区别。 一、Oracle系统权限 Oracle系统权限是授予用户对数据库系统级别操作的权限,用户可以使用这些
    的头像 发表于 12-05 16:21 364次阅读

    Linux把目录权限给指定用户

    Linux是一个开放源代码的操作系统,它基于Unix的设计原则,提供了丰富的权限管理功能,允许用户对系统中的文件和目录进行精确的控制。在Linux中,每个文件和目录都有相应的权限,这些权限
    的头像 发表于 11-23 10:30 2983次阅读

    应用太多无从下手,企业如何破解访问权限管理难题?

    权限管理,是信息安全的重要基石。有了权限管理,企业才能决定用户可以访问哪些资源,并限制用户只能访问这些资源。近年来,因为权限
    的头像 发表于 11-16 20:10 257次阅读

    Saas多租户数据范围权限系统的简单设计与实现

    在企业系统中,通过配置用户的功能权限可以解决不同的人分管不同业务的需求,基于RBAC模型RBAC(Role Based Access Control)
    发表于 09-25 10:25 1388次阅读
    Saas多租户数据范围<b class='flag-5'>权限</b>系统的简单设计与实现

    华为企业交换机ACL设置案例分析

    模拟器有三台主机PC,是PC1,PC2,PC3我们分别使用基本ACL高级ACL和二层ACL来实现一些访问控制,用户可自行体会其中的差别
    发表于 08-14 10:19 626次阅读
    华为企业交换机<b class='flag-5'>ACL</b>设置案例分析

    华为企业交换机ACL经典案例

    模拟器有三台主机PC,是PC1,PC2,PC3我们分别使用基本ACL高级ACL和二层ACL来实现一些访问控制,用户可自行体会其中的差别。
    的头像 发表于 08-14 10:19 395次阅读
    华为企业交换机<b class='flag-5'>ACL</b>经典案例

    用户组和权限管理:5.6 权限管理-权限概述查看权限 #硬声创作季

    网络管理
    充八万
    发布于 :2023年07月12日 03:18:21