XACML如何处理政策冲突?如果PAP(策略管理点)在两个<policy>
文件中包含两个不同的policy.xml
元素,其中两个策略具有相同的Target
,哪一个将被评估?这两个策略都在<policy>
的不同文件中自包含。
如果<policy>
元素都位于<PolicySet>
内,则会使用PolicyCombiningAlgId
。但是,它们存在时,它们是如何解决XACML引擎处理这个问题的呢?
答案 0 :(得分:2)
(注意:我清理了你的问题,因为你有很多XACML不准确)。
有两种方法可以解决XACML中的冲突。这些是:
您的问题最具体地与您使用多个策略配置策略决策点(PDP)(而不是您编写的PAP)的情况有关。哪一个获胜?由于它们都没有被包裹,因此没有任何组合算法可供选择。此行为未在XACML标准中定义,并且取决于您使用的XACML引擎。
例如,Axiomatics XACML引擎强制您始终选择根策略(集),即引擎将其视为其入口点的策略(集)。只有在根策略引用它们时,才会使用传递给PDP的任何其他策略。如果您想了解有关组合算法的更多信息,请查看我最近写的blog post。