基于关系的访问控制
在计算机系统安全领域,基于关系的访问控制 (ReBAC)定义了一种授权范式,其中主体访问资源的权限由这些主体与资源之间存在的关系来定义。
通常,ReBAC 中的授权是通过遍历关系有向图来执行的。该图的节点和边与资源描述框架 (RDF)数据格式中的三元组非常相似。[1] ReBAC 系统允许存在关系层次结构,一些系统还允许定义更复杂的关系,包括关系上的代数运算符,例如并集、交集和差集。[2]
ReBAC 随着社交网络应用的兴起而流行起来,在这些应用中,用户需要根据他们与数据接收者之间的关系,而不是接收者的角色,来控制他们的个人信息。[3]使用 ReBAC 可以为团队和群体统一定义权限,从而消除了为每个资源单独设置权限的需要。[4]
与基于角色的访问控制 (RBAC)相比,RBAC 定义了带有特定特权集的角色,并将这些角色分配给主体,[5] ReBAC (与 ABAC [6]类似) 允许定义更细粒度的权限。[5]例如,如果 ReBAC 系统定义了文档(document)类型的资源,该资源可以允许一个操作编辑者(editor) ,如果系统包含了关系('alice', 'editor', 'document:budget') ,那么主体Alice就可以编辑特定的资源document:budget 。 ReBAC 的缺点是,因为它允许更细粒度的访问,这也就意味着应用程序可能需要执行更多的授权检查。
ReBAC 系统采取默认拒绝的策略,并且可以在它们之上构建 RBAC 系统。[2]
历史
[编辑]ReBAC 这个术语由 Carrie E. Gates 于 2006 年提出。[3]
2019 年,谷歌发表了一篇论文,介绍了“桑给巴尔:谷歌的一致性全球授权系统”。[2]论文定义了一个系统,该系统由命名空间配置和表示为三元组的关系数据组成。
自该论文发表以来,已经有多家公司开发出了商业和开源的 ReBAC 系统产品。
参见
[编辑]实现
[编辑]参考
[编辑]- ^ RDF 1.1 Primer: Triples. www.w3.org. [2022-07-07]. (原始内容存档于2024-06-13).
- ^ 2.0 2.1 2.2 2.3 Pang, Ruoming; Caceres, Ramon; Burrows, Mike; Chen, Zhifeng; Dave, Pratik; Germer, Nathan; Golynski, Alexander; Graney, Kevin; Kang, Nina; Kissner, Lea; Korn, Jeffrey L. Zanzibar: Google's Consistent, Global Authorization System. 2019 USENIX Annual Technical Conference (USENIX ATC '19) (Renton, WA). 2019 [2024-04-24]. (原始内容存档于2023-12-06).
- ^ 3.0 3.1 Gates, Carrie. Access control requirements for web 2.0 security and privacy. IEEE Web. 2007, 2: 12–15.
- ^ What is Relationship-Based Access Control. www.permit.io/blog/. [2024-04-24]. (原始内容存档于2024-04-13).
- ^ 5.0 5.1 Authorization - OWASP Cheat Sheet Series. cheatsheetseries.owasp.org. [2022-06-21].
- ^ Hu, Vincent C.; Ferraiolo, David; Kuhn, Rick; Schnitzer, Adam; Sandlin, Kenneth; Miller, Robert; Scarfone, Karen. Guide to Attribute Based Access Control (ABAC) Definition and Considerations. NIST. January 2014 [2022-07-07]. doi:10.6028/nist.sp.800-162.
- ^ SpiceDB GitHub. GitHub. 24 November 2021 [2023-11-16]. (原始内容存档于2024-05-09).
- ^ Topaz GitHub repo. GitHub. 24 October 2022 [2024-04-24]. (原始内容存档于2024-02-21).
外部链接
[编辑]- 授权和 OpenFGA 简介 (页面存档备份,存于互联网档案馆) (英文)
- 基于关系的访问控制 (ReBAC) (页面存档备份,存于互联网档案馆) (英文)
- AuthZ:Carta 高度可扩展的权限系统 (页面存档备份,存于互联网档案馆) (英文)
- SpiceDB 是一个受桑给巴尔启发的开源数据库,用于存储、计算和验证细粒度的权限。 (页面存档备份,存于互联网档案馆) (英文)
- 3Edges:真正的ReBAC 和基于知识的授权平台 (页面存档备份,存于互联网档案馆) (英文)
- 使用 ReBAC 建模类似 Google Drive 的权限 (页面存档备份,存于互联网档案馆) (英文)