zer*_*ero 10 authorization xacml alfa abac open-policy-agent
我有一个项目需要 ABAC 对我的项目资源进行访问控制。我一直在研究 OPA 和 authzforce 作为实现 ABAC 的选项,而 OPA 看起来可能没有 authzforce 复杂。我看到 OPA 将自己与其他系统和范式进行了比较,但它为 ABAC 提供的示例还有很多不足之处。主要是因为 ABAC 需要使用点来执行策略、围绕策略做出决策、为策略决策获取主体和客体属性。我觉得 OPA 拥有除最后一部分之外的所有内容,但很难判断这是否属实,因为他们的 ABAC 示例只是一次性的。
我一直在互联网上寻找 OPA 用作 ABAC 实现的示例,但我什么也没找到。
我的项目是一个 Web 应用程序,它允许最终用户创建资源并为其资源创建策略。我计划为最终用户创建一个 UI 来创建他们的策略。我的计划是抽象掉它的编码方面,而是为它们提供下拉菜单和按钮,这个 UI 将在幕后使用自定义语法,我将其解释为 OPA 策略。
我遇到的主要问题是如何将其作为 ABAC 来实现,它是否像构建将获取主题、对象和环境的属性并在它和 OPA 之间创建胶水的部分一样直接(本质上是创建一个 PIP ) 因为 OPA 本身似乎是事实上的 PEP 和 PDP?
我觉得我被文档淹没了,而且 OPA 自己的文档中似乎缺少很多来解释如何做到这一点。
OPA 看起来可能没有 authzforce 复杂
这两种方法都有一些优点和缺点。首先,您已经意识到 OPA 和 AuthZForce 都是 ABAC 实现(您可以在此处和此处阅读有关 ABAC 的更多信息)。
Open Policy Agent 是一种相对新颖的模型,主要(但不仅限于)解决基础设施(例如 Kubernetes)的细粒度授权问题。他们甚至为 Istio 和 Kubernetes 预先构建了集成点。OPA 提供了 PEP(执行/集成)和 PDP(政策决策点),尽管它不一定这样称呼它们。它使用的语言称为 REGO(DATALOG 的衍生物)。
OPA 本身似乎是事实上的 PEP 和 PDP
是的,您是绝对正确的,这给您带来了实施 PIP 替代方案的负担。
我觉得我被文档淹没了,而且 OPA 自己的文档中似乎缺少很多来解释如何做到这一点。
联系 Styra - 他们围绕 OPA 销售服务。或者重新考虑您的选择并研究 XACML(见下文)。
我一直在互联网上寻找 OPA 用作 ABAC 实现的示例,但我什么也没找到。
看看他们在 Netflix 所做的工作。这是我所知道的主要实现。您还可以联系OPA 背后的公司Styra,他们将能够提供帮助。
AuthZForce 是 XACML(可扩展访问控制标记语言xacml)标准的开源 Java 实现。它提供了完整的 ABAC 实现(PAP、PEP、PDP、PIP)。它是Fiware(一个开源计划)的一部分,由Thales的一个团队积极开发。
您可以考虑许多其他 XACML 实现(开源和商业):
XACML / ALFA 的主要优点之一是它们是标准并被广泛采用。该标准自 2001 年以来一直存在,并与其他标准(例如 SAML、OAuth 和 SCIM)互操作。
小智 5
也许最具体的答案是详细描述 Chef Automate 如何使用 OPA 实现应用程序授权。
更一般地说,我们正在计划一个指南,描述如何使用 OPA 进行应用程序授权——它需要比 SO 答案更多的细节。但是使用 OPA(或任何策略引擎)进行应用程序授权在一定程度上取决于您的应用程序、其架构、您的 SLA 等。但这里有一些需要考虑的关键问题:
我们总是乐于讨论您的应用程序的详细信息,并帮助您找到适合 OPA 的产品。请随时联系OPA 松弛频道。
| 归档时间: |
|
| 查看次数: |
4315 次 |
| 最近记录: |