与其他应用程序集成 > 集成的软件管理 > 《PTC Windchill Integration for Software Build Tools 开发人员指南》 > 安装和配置 > 配合使用 Windchill Integration for Software Build Tools 和基于证书的验证
  
配合使用 Windchill Integration for Software Build Tools 和基于证书的验证
您可以配置“软件版次工具”的 web 服务来使用基于证书的验证。此配置允许通过证书交换访问 web 服务。但是进行此配置时必须考虑安全问题,因为它不会限制访问。配置 web 服务后,您可以使用 Windchill 用户名激活它。也就是说,任何有效的用户名都可以用于验证而无需提供密码。证书取代了密码。因此进行此配置时必须最大限度地考虑安全问题,因为它不会限制任何特定用户的访问。
配置基于证书的验证
管理员可以通过以下步骤,使用 SAML 安全策略配置“软件版次工具”的 web 服务:
1. 使用“Windchill 帮助中心”的帮助主题“了解安全要求”中的“信任库和密钥库”节中给出的说明创建密钥库和信任库文件。
* 
jws-stores.xml 版次脚本可以生成客户端或服务器密钥库和信任库对供 Info*Engine Web 服务使用。您可以使用 jws-stores.xml 版次脚本作为示例来使用自己的证书为您的 web 服务和客户端生成信任库和密钥库。
2. 按照如下步骤将 web 服务重新部署到 Windchill 服务器:
cd <your local view root>\Rialto\modules\RBMWebServiceCore\src
ant -f %WT_HOME%/bin/adminTools/WebServices/build.xml -Dservlet.name=RBMWSCoreService -Dtype.id=com.ptc.rialto.RBMWSCoreService -Dsecurity.policy=samlsv generate
* 
当您已经在桌面上安装了“软件版次工具”客户端时,SAML 不是一个适于使用的安全策略。
要进行有效的配置,您的服务器需要有 security.properties 文件。默认文件通常位于 %WT_HOME%\Windchill\bin\adminTools\WebServices。要使用其他文件,请通过将 -Dsecurity.properties.file= 添加到 ant 命令来覆盖它。
* 
指定 %WT_HOME% 的绝对路径。
仅当已使用 jws-stores.xml 脚本创建了 security.properties 文件时,该文件才会位于 %WT_HOME%\Windchill\bin\adminTools\WebServices 中。
security.properties 文件必须包含到服务器的密钥库和信任库文件的路径、密码以及证书名称。此外,文件中的 handler.config 行必须指示 SAML 处理程序。
3. 通过移除 Apache conf 文件中的 RBM 特定条目禁用 web 服务器基础功能的验证保护。为此,编辑 ${APACHE_HOME}/conf/extra 中的 app-Windchill-Auth.confapp-Windchill-AuthRes.xml 文件。
4. 按照如下步骤启动 Windchill 服务器并重新配置客户端的 JAR 文件以使用 SAML 安全策略:
cd %WT_HOME%\Windchill\codebase\client\jws
java -jar webservices-support.jar -clientJar %WT_HOME%\Windchill\codebase\client\jws\RBMWebServiceCore.jar -securityProperties <path to> security.properties
5. 通过提供标准的 Windchill 用户名和常规命令参数激活“软件版次工具”的 web 服务。
有关设置安全策略的详细信息,请参阅“Windchill 帮助中心”中的相关文档。
security.properties 文件的示例
com.ptc.jws.client.keystore.file=%WT_HOME%/Windchill/prog_examples/jws/stores/client-keystore.jks
com.ptc.jws.client.keystore.password=changeit
com.ptc.jws.client.keystore.alias=ws-client
com.ptc.jws.client.truststore.file=%WT_HOME%/Windchill/prog_examples/jws/stores/client-truststore.jks
com.ptc.jws.client.truststore.password=changeit
com.ptc.jws.client.truststore.peeralias=<host name, if the jws-stores.xml was used to create the keystore>
handler.config=samlHandler:com.ptc.jws.client.handler.SamlCallbackHandler