【问题标题】:XACML Policy Enforcement Point (PEP) Best PracticesXACML 策略执行点 (PEP) 最佳实践
【发布时间】:2014-10-22 14:35:48
【问题描述】:

我有以下场景:

在业务工作流程中,必须针对不同的论点做出许多决定。

eg:先检查用户角色,再做一些业务逻辑,再检查业务权限,ecc...

我的问题是:

假设在 PDP 上,每个参数都有许多策略,

PEP 是否应该向 PDP 发出单个(大)xacml 请求,包含所有属性(例如:用户角色、业务属性、ecc)?

PEP 是否应该向 PDP 发出多个(短)xacml 请求,只包含一种属性(例如:第一次调用用户角色,第二次调用业务属性,ecc..)?

谢谢你

【问题讨论】:

    标签: authorization access-control xacml abac


    【解决方案1】:

    PEP 永远不应该知道 PDP 有多少政策,更不用说它们的结构了。此外,每个授权问题都应该有一个请求。如果您有多个用例,例如

    • 创建交易
    • 查看交易
    • 打印交易
    • 批准交易

    那么你应该做 4 个独立的 XACML 请求。 1 个 XACML 请求 = 1 个授权请求。如果您创建了具有大量属性的单个 XACML 请求,您实际上不会问 4 个单独的问题,而是一个奇怪的组合,如果任何提供的属性触发了 Permit(当然这一切都取决于关于您拥有的策略和组合算法)。

    为了节省往返时间(运输成本......),您可以使用 XACML (MDP) 的多决策配置文件,您可以一次性询问:

    • 用户可以创建、查看、打印、批准交易 X 吗?

    公理策略服务器实现了多决策配置文件。你可以阅读这个blog post to understand how to create the request

    HTH, 大卫。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-03-01
      • 2016-11-29
      • 1970-01-01
      • 2022-08-13
      • 2020-08-25
      • 1970-01-01
      • 2021-10-26
      • 2016-11-08
      相关资源
      最近更新 更多