一、.组织下创建相应的密级组:
内部人员秘密人员机密人员
二、定义安全标签、安全标签值、安全标签配置文件等
1.定义安全标签:
导航至下列源文件:Windchill/src/wt/access/accessModelRB.rbInfo
Windchill/src/wt/access/accessModelRB_zh_CN.rbInfo
. 将 accessModelRB.rbInfo 及accessModelRB_zh_CN.rbInfo文件复制到以下位置:Windchill/wtCustom/wt/access
修改accessModelRB_zh_CN.rbInfo文件,定义安全标签:
修改accessModelRB.rbInfo文件,
其中DOC_SECURE_CONTROL是安全标签名称,此值应仅使用字母数字字符和下划线字,由于要显示在用户界面中,因此 ‘文档密集’是安全标签的名称。
<LONG_DESCRIPTION> 是安全标签的详细说明。详细说明显示在自动生成的安全标签说明中,通过单击 “安全标签” 表格中的“查看安全标签信息”图标 可以访问该说明。
保存并关闭该文件,在windchill shell中执行以下命令:
ResourceBuild wt.access.accessModelRB
2.定义标准安全标签值
1). 将类的资源束文件从以下源目录:
Windchill/src/wt/access/configuration
复制到以下目录:
Windchill/wtCustom/wt/access/configuration
2). 在文本编辑器中打开类的资源束文件。例如,对于 SecurityLabel1 类,打开以下文件:
Windchill/wtCustom/wt/access/configuration/SecurityLabel1RB.rbInfo
其中 Windchill 是您的 Windchill 解决方案的安装位置。
3). 为每个标准安全标签值添加以下各行:
<VALUE>.value=<LOCALIZED_DISPLAY_NAME><VALUE>.longDescription=<LONG_DESCRIPTION>
• 其中 是在 securityLabelsConfiguration.xml 文件中指定的安全标签值名称。
• 在用户界面中显示时,<LOCALIZED_DISPLAY_NAME> 是安全标签值的名称。
• <LONG_DESCRIPTION> 是安全标签的详细说明。详细说明显示在自动生成的安全标签在线帮助中,通过单击 “安全标签” 表格中的“查看安全标签信息”图标 可以访问该说明。
示例如下:
保存并关闭。
在 Windchill shell 中,运行下列命令来构建资源束:
• 对于 Windows 系统:
ResourceBuild wt.access.configuration.SecurityLabel1RB
• 对于 UNIX 系统:
ResourceBuild.sh wt.access.configuration.SecurityLabel1RB
3.对于每个安全标签类重复步骤 1 到 2。
4.编辑安全标签配置文件 - 必需
安全标签配置文件在出厂时位于以下位置:
Windchill/conf/securityLabelsConfiguration.xml
备注:修改前备份该文件
最初打开 securityLabelsConfiguration.xml 文件时,您将看到以下
内容:
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE SecurityLabelsConfigurationSYSTEM "securityLabelsConfiguration.dtd"><SecurityLabelsConfiguration enabled="false"></SecurityLabelsConfiguration>
要启用安全标签,请在配置文件内部进行以下更改:
• 如果要启用协议,则应添加 AgreementConfiguration 元素及其子
元素。
• 对于每个标准安全标签,应添加 SecurityLabel 元素及其子元素。
• 对于每个自定义安全标签,应添加 CustomSecurityLabel 元素及其
子元素。
• 将 SecurityLabelsConfiguration 元素的 enabled 参数的值,
从“false”改为“true”:
<SecurityLabelsConfiguration enabled="true">
以下只说明标准安全标签用法:
SecurityLabel元素包含用于定义标准安全标签的数据,其中包括可能的安全标签值、每个值的授权参与者 (如果不是所有用户)、与标签值关联的协议类型 (如果存在) 以及应用程序和服务在处理安全标签时使用的各种映射。配置的每个标准安全标签都应具有一SecurityLabel 元素。
示例如下:
SecurityLabel元素的 name 属性就是存储在数据库中用于此安全标签的字符串,在本例中是 DOC_SECURE_CONTROL。为使此安全标签在您的Windchill 解决方案中可用,enabled 属性必须设置为 true。此名称值通常不会显示在用户界面中;此安全标签的显示名称在此配置的步骤 1 中进行定义。
SecurityLabelResourceKey元素表示标签的资源键,并且以下列格式
指定:WCTYPE|wt.access.SecurityLabeled~SCA|<SECURITY_LABEL>,其中 <SECURITY_LABEL> 是 SecurityLabel 元素的 name 属性的
值。此资源键必须位于accessModelRB.rbInfo 资源文件中。
注意:即使全局禁用安全标签,配置文件中指定的安全标签资源键也必须存在于 accessModelRB.rbInfo 文件中,以便方法服务器能够启动。
SecurityLabelValueResourceClass 元素表示资源文件,其中存储了
标签值已本地化的字符串 (如名称和说明) 的资源键。这些资源键在“定义安全标签值”中定义。此元素包含资源文件类名称。
UnrestrictedPrincipal元素,它将指定此安全标签值的授权参与
者。如果省略 UnrestrictedPrincipal 子元素,则所有用户都将获得对
带有该自定义标签值的对象的访问权限。UnrestrictedPrincipal 元素可含有 ufid 子元素。UFID (唯一联合标识符) 用于指定参与者,该参与者可以是用户、用户定义的组或组织。
5.编辑 LogicalAttributesSite.xml
如果 Windchill/codebase目录中存在LogicalAttributesSite.xml文件,先备份。
1)在 LogicalAttributes 元素中添加 Class 元素。
<Class name="wt.access.SecurityLabeled"></Class>
2)在 Class 元素中, 为 ALL_SECURITY_LABELS、ALL_STANDARD_
SECURITY_LABELS、ALL_CUSTOM_SECURITY_LABELS 以及各安
全标签添加 Property 子元素,格式如下:
<Property><LogicalForm><SECURITY_LABEL></LogicalForm><ExternalForm>SCA|<SECURITY_LABEL></ExternalForm></Property>
其中 SCA|<SECURITY_LABEL> 与安全标签配置文件中安全标签的
SecurityLabelResourceKey 元素值中代字号 (~) 后的段匹配。该值
只能包含字母数字字符和下划线字符。不过,LogicalForm 中的<SECURITY_LABEL> 值不需要与 ExternalForm 中的 <SECURITY_
LABEL> 值匹配。
示例如下:
6.向 RuleConfigurableTypeAttribute.properties添加安全标签 - 可选
如果您的站点计划对多个安全标签中的某一个使用对象初始化规则,则将其中的每个安全标签均添加到RuleConfigurableTypeAttribute.properties 文件中,以便可以为安全标签创建对象初始化规则。
在 Windchill shell 中,运行下列命令:
xconfmanager -s wt.access.SecurityLabeled=<SECURITY_LABEL> -t codebase/com/ptc/core/rule/server/delegate/init/
RuleConfigurableTypeAttribute.properties -p
其中 <SECURITY_LABEL> 是在securityLabelsConfiguration.xml 文件中指定的安全标签名称。可以将多个安全标签指定为逗号分隔的列表。
cd codebase
ant -f MakeJar.xml
重启Method Server,Apache