使用ABAC安全性时,如何查找规则?

时间:2016-04-26 19:07:30

标签: xacml abac

在实施ABAC / XACML时,规范表明您应该使用PEP拦截对敏感数据的请求,PEP将请求路由到PDP(PEP在调用PDP时包括有关主题,环境,资源和操作的属性)。

然后,PDP确定需要针对访问决策评估哪些规则。

来自维基百科: https://en.wikipedia.org/wiki/XACML

  

XACML提供了一个目标,[5]基本上是一组简化的条件,用于策略集,策略或规则应用于给定请求时必须满足的主题,资源和操作。一旦发现策略或策略集应用于给定请求,就会评估其规则以确定访问决策和响应。

     

策略集,策略和规则都可以包含目标元素。

我的理解是PDP如何决定PIP中的哪些规则适用于特定于实现,但这似乎是该过程的一个非常重要的部分 - 例如,如果您错过了规则,则不会评估该请求正常。人们用什么方式实现了这个?什么工作,什么没有? (我不情愿地倾向于对EAV-ish表进行查找。)

1 个答案:

答案 0 :(得分:1)

您始终使用一组策略配置PDP。您可以为PDP提供任意数量的策略和策略集(策略组) 您必须指定入口点,即必须有根策略。然后,该根策略可以包含和/或链接到其他策略(或策略集)。

PDP单独根据来自PEP的传入请求决定调用和评估哪些策略。 PEP不知道有多少政策。你不会错过你在问题中陈述的规则。 PDP不负责任。您通常不会实施自己的PDP。你会使用一个现成的。有几个开源引擎,例如SunXACML和商业替代品,例如希尔伯特。

PIP用于属性值检索,而不用于策略检索。

Sample Representation of a XACML policy