特殊な管理 > Open Services for Lifecycle Collaboration (OSLC) サーバー
Open Services for Lifecycle Collaboration (OSLC) サーバー
Open Services for Lifecycle Collaboration (OSLC) サービスは、ライフサイクル管理ツール間の統合を簡略化するために使用されます。Windchill では、デフォルトで OSLC 仕様がサポートされており、OSLC クライアントはこれらのサービスを使用して Windchill と統合できます。
Windchill OSLC API により、OSLC クライアントは、OSLC 仕様に基づいて、Windchill 部品への照会およびリンクを行うことができます。Windchill では、以下の OSLC 仕様がサポートされています。
Configuration Management 1.0 (Windchill 部品の公開用)
Windchill OSLC サービスは、Windchill オブジェクトの対応する OSLC リソースへのマッピングを処理し、要求されたフォーマットで、これらのリソースに応答を提供します。サポートされているフォーマットは以下のとおりです。
rdf+xml (デフォルト)
text/turtle
* 
Windchill OSLC サービスを使用できるのは OSLC クライアントのみです。OSLC クライアント以外は Windchill (OData) Rest Services (WRS) を使用しなければなりません。
OSLC カタログ
http(s)://<server>:<port>/Windchill/oslc/catalog にある OSLC カタログを参照することで、使用できるすべてのサービス、リソース、および用語の詳細を確認できます。
OAuth 認証の設定
Windchill OSLC サービスのデフォルトの認証は、基本認証です。
OAuth 認証を有効にするには、追加の設定手順を実行しなければなりません。OAuth を使用するように Windchill を設定する手順については、「OAuth 委任認証の設定」を参照してください。Windchill OAuth を設定した後、以下の Windchill プロパティを設定します。
プロパティ名
説明
oslc.authorizationURI
OAuth 認証を取得するための URI
oslc.oauthAccessTokenURI
OAuth アクセストークンを取得するための URI
oslc.oauthRequestTokenURI
OAuth リクエストトークンを取得するための URI
OSLC OAuth プロパティの設定により、Windchill OSLC カタログに OAuthConfiguration プロパティが含められるので、OSLC クライアントは OAuth 認証を使用する必要があることを検出できます。
* 
OAuth 認証を使用する場合、OSLC エンドポイントへのすべてのリクエストに、SpringSecurityFilterChain に設定されている URL パターンをプレフィックスとして追加します。たとえば、SpringSecurityFilterChain が URL パターン /oauth/* を使用して設定されている場合、すべての OSLC エンドポイントに URL パターン /oauth/oslc/* が必要です。
Windchill のアップデート後に必要なコンフィギュレーション
以前のバージョンの Windchill からのアップデート後に Windchill OSLC サービスを有効にするには、次の手順を実行します。
1. 次のエントリを %Windchill%/codebase/WEB_INF/web.xml に追加します
<servlet-mapping>
<servlet-name>OSLCServlet</servlet-name>
<url-pattern>/oslc/*</url-pattern>
</servlet-mapping>
2. Apache コンフィギュレーションに OSLC パスを追加するために、次のエントリを HTTPServer/conf/conf.d/30-app-Windchill-AJP.conf に追加します
JkMount /Windchill/oslc/* ajpWorker
3. Apache コンフィギュレーションで OSLC カタログの匿名アクセスを設定するために、次のエントリを HTTPServer/conf/conf.d/30-app-Windchill-Auth.conf に追加します。
<LocationMatch ^/+Windchill/+oslc/catalog(;.*)?>
Require all granted
</LocationMatch>
コンテンツセキュリティポリシーのコンフィギュレーション
ほかのサイトのクライアントサイトで OSLC プレビューを表示できるようにするには、web.xml ファイルを更新して、次の OSLC コンテンツセキュリティサーブレットフィルタコンフィギュレーションを追加します。
<filter>
<filter-name>OSLCContentSecurityFilter</filter-name>
<description>Servlet request filter to set the Content Security Policy for previews</description>
<filter-class>com.ptc.oslc.windchill.filter.OSLCHttpHeaderSecurityFilter</filter-class>
<init-param>
<param-name>allowedOrigins</param-name>
<param-value>https://site1.domain.com,https://site2.domain.com </param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>OSLCContentSecurityFilter</filter-name>
<url-pattern>/oslc/*</url-pattern>
</filter-mapping>
OSLC のオリジン間リソース共有 (CORS) のコンフィギュレーション
* 
より安全なコンフィギュレーションにするため、CORS フィルタはクロスドメイン OSLC コンフィギュレーションにのみ使用します。
* 
ほかの PTC OSLC クライアントアプリケーションとの間で OSLC リソースを共有するように Windchill を設定する場合、これらのアプリケーションを同じドメインにローカルにインストールします。
ほかのサイトのクライアントサイトが OSLC サービスを表示できるようにするには、web.xml ファイルを更新して、次のサーブレットフィルタコンフィギュレーションを追加します。
<filter>
<filter-name>ContentCorsFilter</filter-name>
<filter-class>org.apache.catalina.filters.CorsFilter</filter-class>
<init-param>
<param-name>cors.allowed.origins</param-name>
<param-value>[ALLOWED_ORIGINS]</param-value>
</init-param>
<init-param>
<param-name>cors.support.credentials</param-name>
<param-value>true</param-value>
</init-param>
<init-param>
<param-name>cors.allowed.methods</param-name>
<param-value>GET,POST,OPTIONS</param-value>
</init-param>
<init-param>
<param-name>cors.allowed.headers</param-name>
<param-value>Content-Type,X-Requested-With</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>ContentCorsFilter</filter-name>
<url-pattern>/oslc/preview/*</url-pattern>
<url-pattern>/oslc/config/*</url-pattern>
</filter-mapping>
クロスサイト展開の Windchill プレビューをフレーム表示するための埋め込みサーブレットエンジンの設定
WindchillCodebeamer などの外部 OSLC サーバーと統合され、両方がクロスサイトで展開される場合、統合された OSLC サーバー内で Windchill プレビューのフレーム表示をサポートするように埋め込みサーブレットエンジン (Tomcat ベース) を設定する必要があります。クロスサイトでの展開とは、windchill.foo.comcodebeamer.bar.com のように、異なるトップレベルのインターネットドメインにサーバーが展開されている状態を指します。
* 
このコンフィギュレーションは、新しいブラウザバージョンとの互換性を確保するために必要です。
埋め込みサーブレットエンジン (Tomcat ベース) を設定するには、xconfmanager ユーティリティを使用して、wt.properties ファイルで次のプロパティを設定します。
プロパティ
説明
wt.authCookieName
認証 Cookie の名前。
wt.authCookieNameRegexp
認証 Cookie の名前と照合する正規表現。
例: _shibsession_.*
認証 Cookie を見つけるには、Windchill にログインし、ブラウザで「開発者ツール」 > 「アプリケーション」 > 「Cookie」に移動します。
* 
Cookie が認証 Web サーバーやプロキシによって削除されたり省略されたりすることなく、確実に埋め込みサーブレットエンジンに渡されるようにします。
これは役に立ちましたか?