【无标题】

访问控制模型(Access Control)

什么是访问控制?

利用身份验证和授权等确保为用户提供基于权限的适当访问。通过启用数据,信息和资源安全性最大程度的降低安全风险

自主访问控制模型
强制访问控制模型

  • DAC 自主访问控制 (Discretionary Access Control)
  • MAC 强制访问控制(Mandatory Access Control)
  • RBAC 基于角色的访问控制 (Role-based Access Control)
  • ABAC 基于属性的访问控制 (Attribute-based Access Control)

DAC 自主访问控制

允许资源所有者授予或限制对象进行访问,这里的对象是数据实体。自主访问控制灵活性较大,资源所有者可以转移,更改或者定义每一个对象。
优势:
灵活性好
简单的角色管理
成本低
Linux系统中有两种自主访问控制策略,9位权限码和访问控制列表。

MAC 强制访问控制

将资源分成密级和类进行管理,对象只能访问那些标明可以由他访问的信息的一种访问控制。简单地说,对象与文件都被表明了固定的安全级别(安全级,访问权限),每次访问时,比对安全级和访问权确定一个用户是否有权进行访问。
多级安全 就是一种强制访问控制策略

RBAC 基于角色的访问控制

RBAC主要是一种非自主访问控制模型。RBAC不允许用户与权限直接关联**(Ferraiolo, Barkley & Kuhn1999)。RBAC是对角色授权,对角色授权的一种方式。
管理RBAC时,必须管理两种不同类型的关联:用户和角色之间的关联
角色和权限之间的关联**。即:当用户的工作职位发生变化时,只有用户-角色关联发生变化。假设工作职位由单个角色表示,那么,当用户的工作职位发生变化时,只需要进行两次用户-角色关联操作:
①删除用户与用户当前角色之间的关联
②添加用户与用户新角色之间的关联

![RBAC (2).png](https://img-blog.csdnimg.cn/img_convert/e88cbe39e9246c143b7a9e799a609771.png#clientId=u13ed606b-257a-4&crop=0&crop=0&crop=1&crop=1&from=drop&id=u6837a9f3&margin=[object Object]&name=RBAC (2).png&originHeight=571&originWidth=1038&originalType=binary&ratio=1&rotation=0&showTitle=false&size=86659&status=done&style=none&taskId=u0b12bd11-e67c-41a1-a497-cb164417b8c&title=)

RBAC0

基本的基于角色的Access Control
RBAC1
角色具有继承关系
RBAC2
角色具有动态关系
RBAC的优势:

RBAC的问题:
角色爆炸。当访问控制所需要的粒度过于细时,就会发生角色爆炸。角色爆炸很难管理,并且由于访问控制变得很复杂,降低了访问的有效性,权限重复。并且这种当用户在公司改变了工作和职责是
可扩展性较低。

ABAC 基于属性的访问控制
传统的 RBAC 与 ACL 等访问控制机制中,可以认为是 ABAC 的子集,对于 RBAC,只是我们的访问机制的实现只是基于属性 role 而已,ACL 则是基于属性是 identity 的 AC。

![ABAC.png](https://img-blog.csdnimg.cn/img_convert/62349a50285725a5d046a2a6c1faf124.png#clientId=u13ed606b-257a-4&crop=0&crop=0&crop=1&crop=1&from=drop&id=u8045d564&margin=[object Object]&name=ABAC.png&originHeight=348&originWidth=836&originalType=binary&ratio=1&rotation=0&showTitle=false&size=32694&status=done&style=none&taskId=u7a7ce45f-0705-451e-bffa-e4ee150e532&title=)
场景一:事业部A**(BU,实体属性)的技术专家P(职级,实体属性)在家里(IP,地理位置,环境属性)是不是有权限查看数据库DB中的一条记录(查询,操作属性)
场景二:ABAC也适用于公司成员快速变化的场景,技术专家P
(BU,实体属性)变成了事业部B的高级管理人员M(职位,实体属性)**。可以修改技术专家的属性实体属性,无需管理员手动更改账户角色。在属性比较多的情况下,需要更细粒度的划分下,RBAC的方式可能会导致角色爆炸,ABAC的方式会更加灵活

ABAC的优势:

  • 对于大型组织,相对于RBAC控制模型需要维护大量的角色和授权关系,相比而言,ABAC更加灵活。
  • 新增资源,ABAC维护的资源较少
  • ABAC控制的粒度细。

ABAC的问题:

  • 定制各种各样的策略比较复杂,相对而言是用RBAC方式更容易接受。

名词:
Attritube:属性
Subject:对象
Object:管理的资源
Operation:
Policy:访问策略
Environment Conditions
![image.png](https://img-blog.csdnimg.cn/img_convert/2ae7d5f2962af9d225d959313798ce70.png#clientId=u13ed606b-257a-4&crop=0&crop=0&crop=1&crop=1&from=paste&id=udd50e459&margin=[object Object]&name=image.png&originHeight=531&originWidth=636&originalType=url&ratio=1&rotation=0&showTitle=false&size=164412&status=done&style=none&taskId=u2e46bdc6-fafb-4e2a-8646-a28c78f9b72&title=)

  1. 尝试访问
  2. ACM 进行计算:subject attributes + object attributes + environment conditions = allow or deny?
  3. 进行访问

![image.png](https://img-blog.csdnimg.cn/img_convert/52adc17d1902b16903fce46f7cc7c539.png#clientId=u13ed606b-257a-4&crop=0&crop=0&crop=1&crop=1&from=paste&id=uce47d401&margin=[object Object]&name=image.png&originHeight=478&originWidth=780&originalType=url&ratio=1&rotation=0&showTitle=false&size=54174&status=done&style=none&taskId=uffc427d4-d9a6-4b18-97bd-fc32ec1a118&title=)
![image.png](https://img-blog.csdnimg.cn/img_convert/97c5300c061b536172c5eb5134a02c12.png#clientId=u13ed606b-257a-4&crop=0&crop=0&crop=1&crop=1&from=paste&id=u249e8801&margin=[object Object]&name=image.png&originHeight=1574&originWidth=2552&originalType=url&ratio=1&rotation=0&showTitle=false&size=396706&status=done&style=none&taskId=uf01a09f1-bd85-4f2b-a8ab-438299303fb&title=)

Refs:

Ferraiolo, D. F., Barkley, J. F., & Kuhn, D. R. (1999). A role-based access control model and reference implementation within a corporate intranet. ACM Transactions on Information and System Security (TISSEC), 2(1), 34-64.
http://t.csdn.cn/fpZoS
https://help.aliyun.com/document_detail/174235.html
http://t.csdn.cn/jZmhf
https://techgenix.com/5-access-control-types-comparison/
https://wilsonmar.github.io/rbac-vs-abac-vs-pbac/
https://www.youtube.com/watch?v=Iq_hDc385t4&t=2378s

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值