XACML 策略建模:如何为多个资源建模策略?

XACML Policy Modeling: how to model policies for multiple resources?

我有一套资源。每个资源都有自己的安全策略,它是安全规则的组合。

要在 XACML 中创建这些策略,我可以使用什么:元素 Policy 或元素 PolicySet

例如:

在那种情况下:我应该为资源 1 创建一个策略元素,为资源 2 创建另一个策略元素等等,所有这些都在 PolicySet 元素下吗?或者我应该根据该安全规则 1 和 2 等创建策略元素吗?

您可以选择多种不同的建模方式。不一定有对或错。当我培训我们的客户时,我通常建议您设计政策以便:

  1. 它们很容易理解
  2. 它们易于管理
  3. 它们可以轻松成长以适应新场景
  4. 他们允许协作。

最常见的模式是定义资源层次结构。例如,您将拥有财务应用程序 > 帐户对象 > 个人信息部分 > 名称字段。

然后您可能会开始查看其他属性,例如用户属性(角色、部门...)

您通常会使用 PolicySet 元素,直到您知道您将需要一个规则,在这种情况下您会切换到一个策略。请记住,PolicySet 元素可以包含 PolicySet 和 Policy 元素。这允许任意深度的策略结构。如果我们重新审视我们的示例,我们将有: