更新 Windchill 配置文件
必须对两个 Windchill 文件 - securityContext.properties 文件和 Web.xml 文件 - 进行编辑,才能在 Windchill 中启用 OAuth。有关详细信息,请参阅配置 OAuth 委派授权
1. 通过 site.xconf 实用程序更新 securityContext.properties 文件中的以下属性。
wt.oauth2.token.userNameAttribute
wt.oauth2.token.tokenType
wt.oauth2.token.scopeAttribute
2. 通过 site.xconf 实用程序在 wt.properties 文件中添加以下属性。
wt.jwt.oauth2.token.issueAtTime
wt.jwt.oauth2.token.azure.tenantId
wt.jwt.oauth2.token.audience
wt.jwt.oauth2.token.tokenIssuer
wt.jwt.oauth2.token.algorithm
wt.jwt.oauth2.token.kidUrl
3. 通过 securityContext.properties.xconf 更新 securityContext.properties 文件中的 wt.jwt.oauth2.token.jwtIdpTyp = azure。如果未为此属性提供任何值,则会忽略令牌中特定于 Azure 的属性,并执行标准 JWT 声明验证。
4. 将 securityContext.properties 文件的位置添加到 WEB-INF/web.xml 文件中。WEB-INF/web.xml 文件必须参考 securityContext.properties 文件。Web.xml 文件位于 /Codebase/WEB-INF/Web.xml。将此位置添加到 Spring root Web 应用程序上下文位置的参数值中。如果已将 securityContext.properties 文件保存在其默认目录中,则以下示例有效。将路径 WEB-INF/security/config/securityContext.xml 添加到 <param-value>config/mvc/applicationContext.xml</param-value> 中。上下文参数的结构应为:
<context-param>
<description>Location of Spring root web application context</description
<param-name>contextConfigLocation</param-name>
<param-value>config/mvc/applicationContext.xml
WEB-INF/security/config/securityContext.xml</param-value>
</context-param>
* 
securityContext.xml 中也引用了 securityContext.properties 文件的位置。如果更改 securityContext.properties 的目录位置,则请在 Web.xmlsecurityContext.xml 中更新对新位置的引用。
5. Web.xml 文件内的 <filter-mapping> 标记前添加 SpringSecurityFilterChain 代码段,例如:
<filter>
<filter-name>springSecurityFilterChain</filter-name>
<filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>
</filter>
<filter-mapping>
<filter-name>springSecurityFilterChain</filter-name>
<url-pattern>/oauth/*</url-pattern>
将以下代码段添加到 Web.xml 文件内的 <servlet-mapping> 标记前。
<servlet>
<description>Bridge Servlet for Oauth Access</description>
<servlet-name>OauthAuthBridgeServlet</servlet-name>
<servlet-class>wt.servlet.AuthBridgeServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>OauthAuthBridgeServlet</servlet-name>
<url-pattern>/oauth/*</url-pattern>
</servlet-mapping>
6. 重新启动 Windchill 和 Apache 服务器。验证 Windchill 是否参与了 SSO 网络的委派授权。
* 
有关详细信息,请参阅配置 OAuth 委派授权
这对您有帮助吗?