1

有没有办法在企业应用程序中设计通用的基于角色的访问控制 (RBAC),以便其他应用程序也可以使用相同的配置?

我已经看到 XACML 支持 WSo2 Rbac,但我无法理解如何设计通用 RBAC 策略以便其他应用程序也可以使用它。

我了解如何使用 WSO2 Identity Server 在 XACML 中创建策略,但我无法了解所有 Java 应用程序将如何使用这些策略?

4

2 回答 2

1

为了在您的应用程序中使用 XACML 策略,您需要将 XACML PEP(策略执行点)代理与您的应用程序集成。PEP 代理将拦截您对资源的所有访问请求,并将其转换为 XACML 请求,然后与 XACML 策略服务器通信以进行决策。

如果您的应用程序是 Java Web 应用程序,那么您可以创建一个 servlet 过滤器作为 PEP。您可以在此处此处找到示例。

如果您将它用于字段级别授权或非 Web 应用程序,那么您可以使用基于节俭的 PEP 客户端,它将与您的 XACML 策略服务器通信。您可以在此处找到使用 java 的示例 PEP 。Thrift 是一种比 SOAP 或 REST 更有效的协议。

于 2014-11-07T10:07:14.703 回答
0

除了 Yusuf 专注于执行的答案之外,您还应该考虑使用XACML 的 RBAC 配置文件,该配置文件专注于策略设计本身。它解释了如何为面向 RBAC 的应用程序设计策略。

在配置文件中,如下图所示,策略被组织成角色策略和权限策略。通过使用策略引用,可以将多个权限分配给多个角色策略。也可以让角色继承其他角色(例如,经理会继承员工的权限)。

高温高压

XACML 的 RBAC 配置文件 - 策略结构

于 2014-11-09T14:03:51.750 回答