我有以下情况:
在业务工作流程中,必须做出许多关于不同论点的决定。
例如:首先检查用户角色,然后执行一些业务逻辑,然后检查业务权限,ecc ......
我的问题是:
假设在PDP上有每个参数的许多策略,
PEP应该向PDP发出单个(大)xacml请求,包含所有属性(例如:用户角色,商务属性,ecc)?
或
PEP应该向PDP发出多个(短)xacml请求,只包含一种属性(例如:第一次使用用户角色调用,第二次调用业务属性,ecc ..)?
谢谢
答案 0 :(得分:0)
PEP永远不应该知道PDP有多少策略,更不用说它们的结构。此外,每个授权问题应该有一个请求。如果您有多个用例,例如
然后你应该做4个独立的XACML请求。 1个XACML请求= 1个授权请求。如果您创建了一个包含大量属性的单个XACML请求,那么您实际上不会问4个单独的问题,而是一个奇怪的混合,如果任何提供的属性触发了许可,您可能会被允许(当然,一切都取决于您拥有的政策和组合算法。
为了节省往返时间(运输成本......),您可以使用XACML(MDP)的多重决策配置文件,您可以一次性询问:
Axiomatics Policy Server实现多决策配置文件。你可以阅读blog post to understand how to create the request。
HTH, 大卫。