XACML 策略建模:如何为多个资源建模策略?
XACML Policy Modeling: how to model policies for multiple resources?
我有一套资源。每个资源都有自己的安全策略,它是安全规则的组合。
要在 XACML 中创建这些策略,我可以使用什么:元素 Policy
或元素 PolicySet
?
例如:
- 规则 1:要读取资源 1,用户必须具有管理员角色
- 规则 2:要在资源 2 上写入,用户必须拥有来自域 @yahoo.com
的电子邮件地址
- 规则 3:要阅读资源 3,用户必须来自圣乔治医院
- 规则 4:写入资源 1 的用户必须具有护士角色。
在那种情况下:我应该为资源 1 创建一个策略元素,为资源 2 创建另一个策略元素等等,所有这些都在 PolicySet 元素下吗?或者我应该根据该安全规则 1 和 2 等创建策略元素吗?
您可以选择多种不同的建模方式。不一定有对或错。当我培训我们的客户时,我通常建议您设计政策以便:
- 它们很容易理解
- 它们易于管理
- 它们可以轻松成长以适应新场景
- 他们允许协作。
最常见的模式是定义资源层次结构。例如,您将拥有财务应用程序 > 帐户对象 > 个人信息部分 > 名称字段。
然后您可能会开始查看其他属性,例如用户属性(角色、部门...)
您通常会使用 PolicySet 元素,直到您知道您将需要一个规则,在这种情况下您会切换到一个策略。请记住,PolicySet 元素可以包含 PolicySet 和 Policy 元素。这允许任意深度的策略结构。如果我们重新审视我们的示例,我们将有:
我有一套资源。每个资源都有自己的安全策略,它是安全规则的组合。
要在 XACML 中创建这些策略,我可以使用什么:元素 Policy
或元素 PolicySet
?
例如:
- 规则 1:要读取资源 1,用户必须具有管理员角色
- 规则 2:要在资源 2 上写入,用户必须拥有来自域 @yahoo.com 的电子邮件地址
- 规则 3:要阅读资源 3,用户必须来自圣乔治医院
- 规则 4:写入资源 1 的用户必须具有护士角色。
在那种情况下:我应该为资源 1 创建一个策略元素,为资源 2 创建另一个策略元素等等,所有这些都在 PolicySet 元素下吗?或者我应该根据该安全规则 1 和 2 等创建策略元素吗?
您可以选择多种不同的建模方式。不一定有对或错。当我培训我们的客户时,我通常建议您设计政策以便:
- 它们很容易理解
- 它们易于管理
- 它们可以轻松成长以适应新场景
- 他们允许协作。
最常见的模式是定义资源层次结构。例如,您将拥有财务应用程序 > 帐户对象 > 个人信息部分 > 名称字段。
然后您可能会开始查看其他属性,例如用户属性(角色、部门...)
您通常会使用 PolicySet 元素,直到您知道您将需要一个规则,在这种情况下您会切换到一个策略。请记住,PolicySet 元素可以包含 PolicySet 和 Policy 元素。这允许任意深度的策略结构。如果我们重新审视我们的示例,我们将有: