CustomSecurityLabel 元素
CustomSecurityLabel 元素中包含的内容有:用于定义自定义安全标签的数据、自定义安全标签值的授权参与者 (仅限不包括所有用户时)、与自定义安全标签值相关联的协议类型、用于处理自定义安全标签的应用程序和服务所使用的各种映射。配置的每个自定义安全标签都应具有一个 CustomSecurityLabel 元素。例如:
<CustomSecurityLabel name="THIRD_PARTY_PROPRIETARY" enabled="true">
<SecurityLabelResourceKey>WCTYPE|wt.access.SecurityLabeled~SCA|
THIRD_PARTY_PROPRIETARY</SecurityLabelResourceKey>
<CustomSecurityLabelValues>
<UnrestrictedPrincipal>
<ufid>cn=Employees,cn=Public,ou=people,cn=AdministrativeLdap,
cn=Windchill_10.1,o=ptc|Ldap.ptcnet.ptc.com|
Ldap.ptcnet.ptc.com</ufid>
<evaluatorClass>
com.ourcompany.CustomEvaluator
</evaluatorClass>
</UnrestrictedPrincipal>
<TranslatorClass>
com.ourcompany.CustomTranslator
</TranslatorClass>
</CustomSecurityLabelValues>
<SecurityLabelParameter>THIRD_PARTY_PROPRIETARY</SecurityLabelParameter>
</CustomSecurityLabel>
CustomSecurityLabel 元素的 name 属性就是存储在数据库中用于此安全标签的字符串,在本例中是 THIRD_PARTY_PROPRIETARY。为使此自定义安全标签在您的 Windchill 解决方案中可用,enabled 属性必须设置为 true。此名称值通常不会显示在用户界面中;此安全标签的显示名称之前在 <Windchill>/wtcustom/wt/access/accessModelRB.rbinfo 文件中进行了定义。
|
保持 CustomSecurityLabel 元素的名称属性和内部自定义标签值尽可能短。您可以使用 TranslatorClass 元素减小数据库中存储的内部值的大小。有关详细信息,请参阅 创建自定义 Java 转换器类。
|
SecurityLabelResourceKey 元素表示标签的资源键,并且以下列格式指定:
WCTYPE|wt.access.SecurityLabeled~SCA|<SECURITY_LABEL>
其中,<SECURITY_LABEL> 是 CustomSecurityLabel 元素上 name 属性的值。此资源键必须存在于之前编辑的 accessModelRB.rbinfo 资源文件中。
|
即使全局禁用安全标签,配置文件中指定的安全标签资源键也必须存在于 accessModelRB.rbinfo 文件中,以便方法服务器能够启动。
|
CustomSecurityLabelValues 元素可以具有单个 UnrestrictedPrincipal 子元素,它将指定此安全标签值的授权参与者。如果省略 UnrestrictedPrincipal 子元素,则所有用户都将获得对带有该自定义标签值的对象的访问权限。
UnrestrictedPrincipal 元素可含有
ufid 子元素。唯一联合标识符 (UFID) 或
WTPrincipalReference 用于指定参与者,该参与者可以是用户、用户定义的组或组织。
UnrestrictedPrincipal 元素还可以含有
evaluatorClass 子元素,用于指定
步骤 3. 创建自定义 Java 评估器类中所创建的评估器类。在
UnrestrictedPrincipal 元素下,
ufid 子元素和
evaluatorClass 子元素既可以一同使用,也可以单独使用。有关分别使用
ufid 子元素、
evaluatorClass 子元素或同时使用两者的差异,请参阅
为自定义安全标签指定授权参与者。
UnrestrictedPrincipal 元素可选择具有 AgreementType 子元素。协议可用于向此安全标签值的未授权参与者授予临时许可。AgreementType 元素的内容以下列格式指定:
其中,<AGREEMENT_NAME> 是协议类型或子类型的内部名称。
可选的
TranslatorClass 元素用于指定在
步骤 4. 创建自定义转换器类中所创建的类。
TranslatorClass 元素将安全标签值的内部名称转换为外部名称 (在
Windchill 中显示),然后重新转换为内部名称。如果未指定
TranslatorClass 元素,则自定义安全标签的内部值和外部值相同。
可选的 SecurityLabelParameter 元素包含由各种创作应用程序使用的参数名称,该名称作为文件属性而映射到此自定义安全标签。SecurityLabelParameter 始终是 CustomSecurityLabel 元素中的最后一个元素。参数名称必须遵循创作应用程序具有的任何参数名称限制。