1
实施简单的基于属性的访问控制(ABAC)的建议路线图是什么?
在阅读有关ACL和RBAC的信息时,我似乎很容易理解-可以使用用户名或角色来访问资产。我还可以看到如何实现这些目标。 即,此图像为我提供了ACL和RBAC的清晰视图(如上图所示,我可以继续设计数据库表):( 图像由pressbooks提供) 我正在努力的是ABAC。到目前为止,我发现的各种图像都是手工绘制的,或者过于复杂,或者建议使用第三方外部实体进行授权。还是给出奇怪的属性示例,我并不完全确定该如何使用。 起始范例 因此,让我从现实生活中入手。假设我有一家拥有70-200人的公司。我要保护的资产是一个包含许多不同页面的网站。我希望允许某些人使用某些资产。 例如,我希望某人Leslie可以访问名为的网页Price Manager,并只允许该人管理Travel该页面上价格组的价格,而不能管理Product同一页面上组的价格。我将如何使用ABAC实施此操作? 到目前为止,我猜测是我可以分配Leslie一些属性(但是哪些属性是什么?这些属性是什么?),然后有一个存储这些属性的数据库表。然后,我可以设计一个引擎,查看这些属性(但不像LeslieRBAC那样将其视为“角色”),并从中决定是否授予对该页面的访问权限。该引擎的外观如何?这是一个简单的if / else块吗?还有吗 如果莱斯利后来改变立场,而有人需要更改访问权限,会发生什么情况?如果她需要转移访问权限Product并撤消访问权限,将会是什么样Travel?如何将它,如果她需要访问撤销的编码Price Manager页共,因此没有再访问没有Travel,或者Product? 在我的案例中,资产只是为了重述Price Manager,而用户可以访问该页面上的各种价格组,例如Travel定价,Product定价等。 我正在寻找的是一个合理的完整路线图,以澄清细节并实现实现,我可以不加猜测地实施它。也就是说,它可以在概念上完成和/或具有我可以可视化数据库结构的特定示例,等等。 好处:ABAC是否是满足相对较小的许可需求(例如,管理70-200个人并访问约150-450资产)的正确方法?坚持使用ACL / RBAC会更好吗?