XACML义务是解释或要求更多条件

时间:2017-05-10 01:28:55

标签: authorization access-control xacml abac alfa

在XACML中,我不确定义务是否会为规则决策添加更多信息或提供更多条件。例如,我希望响应允许访问患者电子健康记录,但我想添加拒绝访问患者电子健康记录中特定记录的义务。

1 个答案:

答案 0 :(得分:1)

在XACML中,义务(和建议)旨在丰富PEP从PDP收到的响应。它们并不意味着传达授权逻辑。

实施例

双因素身份验证

此示例围绕信任/身份验证提升。

  • 问:我可以使用基本身份验证将5,000美元从A转移到B吗?
  • A:拒绝。将用户重新设置为双因素身份验证页面以提升身份验证
  • 问:我可以使用双因素AuthN从A转移到B吗?
  • 答:许可+义务向发件人发送电子邮件。

打破玻璃

  • Alice可以查看医疗记录#123吗?
  • 拒绝+义务:如果这是紧急情况,那么挥动紧急标志'并再次请求访问。
  • Alice可以查看医疗记录#123吗?这是紧急情况。
  • 允许+写在医院内的日志,爱丽丝看到记录#123,并声称这是一个紧急情况。

前面提到的例子来自医疗保健中发生的突破性情景。

控制对事物层次结构(项目,记录)的访问

在您的示例中,您希望控制对项目和子项目的访问。例如,EHR由PII,PHI和财务信息组成。医生可以查看患者与他们有关系的EHR吗?是的,他们应该能够。但是您要掩盖或编辑财务信息,因为它与医生无关。

在这种情况下,我会写出不同的规则 - 每个子项目一个。我希望授权逻辑可见。我想知道有关医生查看PII,PHI或财务的规则。

我可能会使用Multiple Decision Profile向记录的不同部分提问。

当然,如果你想做的只是系统地掩盖了一个领域,那么你就可以逃脱义务。

最佳实践

当您写下义务和建议时,您应该尽量不在其中隐藏授权逻辑。使用它们来丰富授权流程。