在 Master Data Services 中,配置安全性的最简单方法是将模型对象权限分配给用户所属的组。
当以下情况时,安全性变得更加复杂:
分配模型对象和层次结构成员权限。
用户属于某些组,并且权限被分配给用户和组。
用户属于组和权限分配给多个组。
分配给单个组或用户的权限
如果将权限分配给单个组或用户,则会根据以下工作流确定权限。
步骤 1:确定有效的属性权限。
以下列表描述了如何确定有效的属性权限:
分配给模型对象的权限决定了用户可以访问的属性。
所有模型对象都会从模型结构中较高级别的最接近的对象自动继承权限。
隐式拒绝与实体位于同一级别的任何对象。
更高级别的任何对象都获得导航访问权限。 有关导航访问的详细信息,请参阅导航访问(Master Data Services)。
在此示例中, 只读 权限分配给实体,该权限由其属性继承,该属性位于模型结构中的较低级别。 该模型提供对此实体及其属性的导航访问。 模型中的另一个实体没有分配明确权限,也不继承任何权限,因此会被默认拒绝。
步骤 2:如果分配层次结构成员权限,则确定有效的成员权限。
以下列表描述了如何确定有效的层次结构成员权限:
分配给层次结构节点的权限决定了用户可以访问的成员。
层次结构中的所有节点会自动从层次结构结构中较高级别的最接近的对象继承权限。
同一级别的任何节点都隐式拒绝。
具有较高级别的任何节点如果没有被分配权限,会被默认拒绝。
在此示例中, 只读 权限分配给层次结构的一个节点,该权限由层次结构结构中较低级别的节点继承。 根没有分配权限,因此会隐式拒绝它。 层次结构中的其他节点没有分配显式权限,也不会继承任何权限,因此会隐式拒绝该节点。
步骤 3:确定属性和成员权限的交集。
如果有效属性权限不同于有效成员权限,则必须为每个单独的属性值确定权限。 有关详细信息,请参阅重叠模型和成员权限(Master Data Services)。
分配给多个组的权限
如果用户属于一个或多个组,并将权限分配给用户和组,则工作流将变得更加复杂。
在这种情况下,必须先解析重叠的用户和组权限,然后才能比较模型对象和层次结构成员权限。 有关详细信息,请参阅重叠的用户和组权限(Master Data Services)。
另请参阅
重叠的用户和组权限(Master Data Services)重叠模型和成员权限(Master Data Services)