Amministrazione avanzata > Server di collaborazione del ciclo di vita del servizio aperto (OSLC)
Server di collaborazione del ciclo di vita del servizio aperto (OSLC)
I servizi di collaborazione del ciclo di vita del servizio aperto (OSLC) vengono utilizzati per semplificare l'integrazione negli strumenti di gestione del ciclo di vita. Windchill supporta la specifica OSLC per default e consente ai client OSLC di utilizzare questi servizi per l'integrazione con Windchill.
Le API di Windchill consentono ai client OSLC di eseguire interrogazioni e collegarsi alle parti Windchill in base alle specifiche OSLC. Windchill supporta le seguenti specifiche OSLC:
Configuration Management 1.0 (per l'esposizione di parti Windchill)
I servizi Windchill OSLC sono responsabili della mappature degli oggetti Windchill a una risorsa OSLC corrispondente e forniscono la risposta per tali risorse nel formato richiesto. Di seguito sono riportati i formati supportati:
rdf+xml (default)
testo/turtle
* 
I servizi Windchill OSLC possono essere utilizzati solo dai client OSLC. I client non OSLC devono utilizzare Windchill (OData) Rest Services (WRS).
Catalogo OSLC
È possibile accedere al catalogo OSLC su http(s)://<server>:<port>/Windchill/oslc/catalog per ulteriori informazioni su tutti i servizi, le risorse e la terminologia disponibili.
Configurazione dell'autorizzazione OAuth
L'autorizzazione di default per i servizi Windchill OSLC è quella di base. Per attivare l'autorizzazione OAuth è necessario un passo di configurazione aggiuntivo.
Per la procedura di configurazione di Windchill per l'uso di OAuth, vedere Configure OAuth Delegated Authorization. Dopo aver configurato Windchill OAuth, impostare le seguenti proprietà Windchill:
Nome proprietà
Descrizione
oslc.authorizationURI
URI per ottenere l'autorizzazione OAuth
oslc.oauthAccessTokenURI
URI per ottenere il token di accesso OAuth
oslc.oauthRequestTokenURI
URI per ottenere il token di richiesta OAuth
Quando le proprietà OSLC OAuth sono configurate, il catalogo OSLC di Windchill include la proprietà OAuthConfiguration, che consente ai client OSLC di stabilire se devono utilizzare l'autorizzazione OAuth.
* 
Quando si utilizza l'autorizzazione OAuth, assicurarsi che tutte le richieste per gli endpoint OSLC siano precedute dall'espressione URL della SpringSecurityFilterChain configurata. Ad esempio, se SpringSecurityFilterChain è configurata con l'espressione URL /oauth/*, tutti gli endpoint OSLC devono includere l'espressione URL /oauth/oslc/*.
Configurazione richiesta dopo l'aggiornamento di Windchill
Per attivare i servizi Windchill OSLC dopo l'aggiornamento da una versione precedente di Windchill, attenersi alla procedura descritta di seguito.
1. Aggiungere la seguente voce a %WT_HOME%/codebase/WEB_INF/web.xml
<servlet-mapping>
<servlet-name>OSLCServlet</servlet-name>
<url-pattern>/oslc/*</url-pattern>
</servlet-mapping>
2. Per aggiungere il percorso OSLC alla configurazione Apache, aggiungere la voce seguente a HTTPServer/conf/conf.d/30-app-Windchill-AJP.conf
JkMount /Windchill/oslc/* ajpWorker
3. Per configurare il catalogo OSLC per l'accesso anonimo nella configurazione Apache, aggiungere la voce seguente a HTTPServer/conf/conf.d/30-app-Windchill-Auth.conf
<LocationMatch ^/+Windchill/+oslc/catalog(;.*)?>
Require all granted
</LocationMatch>
Configurazione per la regola di protezione del contenuto
Per consentire ai siti client di altri siti di visualizzare le anteprime di OSLC, aggiornare il file web.xml in modo da includere le seguenti configurazioni di filtri servlet di protezione del contenuto di 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>
Configurazione per CORS (Cross-Origin Resource Sharing) per OSLC
* 
Per una configurazione più sicura, utilizzare il filtro CORS solo per una configurazione OSLC tra domini.
* 
Quando si configura Windchill per condividere risorse OSLC con altre applicazioni client OSLC PTC, installare queste applicazioni localmente nello stesso dominio.
Per consentire ai siti client di altri siti di visualizzare i servizi OSLC, aggiornare il file web.xml in modo da includere le seguenti configurazioni di filtri servlet:
<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>
Configurazione di Apache per il framing delle anteprime di Windchill per una distribuzione tra siti
Quando Windchill è integrato con un server OSLC esterno, ad esempio Codebeamer, ed entrambi vengono distribuiti tra siti, Apache deve essere configurato per supportare il framing delle anteprime di Windchill nel server OSLC integrato. Una distribuzione tra siti fa riferimento a server distribuiti in domini Internet di livello superiore diversi, ad esempio windchill.foo.com e codebeamer.bar.com.
* 
Questa configurazione è necessaria per garantire la compatibilità con le versioni più recenti del browser.
Per configurare Apache, attenersi alla procedura descritta di seguito.
1. Impostare le seguenti proprietà nel file app-Windchill.properties:
Proprietà
Descrizione
trustedAncestorSites
Specificare l'URL del server OSLC tra siti per attivare il framing della pagina di anteprima di OSLC.
Questo valore deve corrispondere al valore di allowedOrigins nel file web.xml di OSLCContentSecurityFilter.
Ad esempio, l'URL del server Codebeamer tra siti https\://ppumsv-ipfc408d.almrd.example.com\:8573
authCookieNameRegexp
Espressione regolare per il nome del cookie di autenticazione, che può corrispondere al nome del cookie di autenticazione.
Ad esempio: _shibsession_.*
Per individuare il cookie di autenticazione, accedere a Windchill e passare a Strumenti di sviluppo > Applicazione > Cookie nel browser.
enableOslcPreviewRewrite
Impostare questo valore su true per attivare il flusso di jump page basato su Apache.
enableRefererChecking
Impostare questo valore su true per attivare un controllo dell'intestazione del referente come misura di sicurezza aggiuntiva. Questa operazione è facoltativa.
originBaseUrl
Se enableRefererChecking è impostato su true, specificare l'URL di base del server Windchill.
Ad esempio: https\://pwrdcsv-wcqa576d.ptcnet.ptc.com
setReferrerPolicy
Se enableRefererChecking è impostato su true, impostare questo valore su true per configurare l'intestazione della risposta alle regole del referente su strict-origin.
2. Eseguire il comando Ant ant -f webAppConfig.xml regenAllWebApps.
In alternativa, è possibile eseguire il comando Ant ant -f webAppConfig.xml regenWebAppConf -DappName=Windchill.
3. Riavviare il server Apache per applicare le modifiche.
4. Verificare che sia possibile visualizzare le anteprime di Windchill nel server OSLC integrato.
È stato utile?