Altre configurazioni > Configurare ThingWorx Navigate con un ambiente cluster Windchill
  
Configurare ThingWorx Navigate con un ambiente cluster Windchill
È possibile utilizzare ThingWorx Navigate con un ambiente cluster Windchill. Per connettere ThingWorx Navigate a Windchill, utilizzare l'URL dello strumento di bilanciamento del carico. L'URL da utilizzare dipende dalle condizioni indicate di seguito.
Configurazione di ThingWorx Navigate - Autenticazione Single Sign-On o Windchill
Configurazione di base di Windchill - Protocollo HTTP o HTTPS
Questo argomento offre informazioni di base sull'ambiente cluster ed esempi di configurazioni con ThingWorx Navigate.
* 
È necessario tenere in considerazione alcuni fattori in materia di sicurezza quando si utilizza un cluster Windchill in una configurazione di ThingWorx Navigate. Assicurarsi di esaminare le informazioni che seguono prima di utilizzare una configurazione cluster in produzione.
Diagramma di ThingWorx Navigate configurato con un ambiente cluster Windchill
Informazioni sui cluster Windchill
I vantaggi principali dell'utilizzo di un cluster sono l'aumento delle prestazioni, la scalabilità e l'affidabilità. Un cluster è costituito dai componenti indicati di seguito.
Due o più host a livello applicazione connessi a un'istanza di database singola e che vengono gestiti da un router di bilanciamento del carico.
Router di bilanciamento del carico - Riceve le richieste dai client, inclusi gli utenti di Windchill e di ThingWorx Navigate. Lo strumento di bilanciamento del carico distribuisce le richieste tra una delle istanze di Windchill. Di conseguenza, gli utenti hanno meno ripercussioni in caso di blocco di un server o di traffico elevato.
Per il resto della rete, il router appare come un unico server Windchill, che dispone di un proprio nome host e che deve sempre utilizzare il protocollo HTTPS.
Per ulteriori informazioni sui cluster, vedere l'argomento "Installing and Configuring a Cluster Windchill Environment" in Windchill Help Center.
Nelle sezioni che seguono sono disponibili quattro esempi di come configurare un cluster Windchill per ciascuna delle configurazioni di autenticazione di ThingWorx Navigate. Per ThingWorx Navigate si consiglia di utilizzare l'autenticazione Single Sign-On, in quanto è la configurazione più sicura. Le altre configurazioni richiedono impostazioni aggiuntive e ulteriori considerazioni sulla sicurezza, per garantire che sia configurata una soluzione end-to-end.
Autenticazione Single Sign-On di ThingWorx Navigate con un cluster Windchill configurato con i protocolli HTTPS e OAuth (configurazione consigliata)
Si tratta dell'impostazione più sicura. Di seguito sono riportati i dettagli di configurazione.
Tipo di autenticazione di ThingWorx Navigate - SSO
Protocollo dello strumento di bilanciamento del carico - HTTPS
Server Windchill - Protocolli HTTPS e OAuth configurati. L'autenticazione SAML è facoltativa.
Dal momento che Windchill utilizza il protocollo HTTPS, nello strumento di bilanciamento del carico non si verifica nessuna terminazione del certificato SSL.
Verificare l'URL dello strumento di bilanciamento del carico nelle posizioni indicate di seguito in ThingWorx Composer.
Per ptc-windchill-integration-connector, l'URL base è [https]://[LB-host]:[port]/[windchill-web-app]/oauth
Per ptc-windchill-integration-connector-proxy:
URL base - [https]://[LB-host]
URL test connessione - [https]://[LB-host]:[port]/[windchill-web-app]/oauth/servlet/WindchillAuthGW/wt.httpgw.HTTPServer/echo
Autenticazione Single Sign-On di ThingWorx Navigate con un cluster Windchill configurato con i protocolli HTTP e OAuth
Di seguito sono riportati i dettagli di configurazione.
Tipo di autenticazione di ThingWorx Navigate - SSO
Protocollo dello strumento di bilanciamento del carico - HTTPS
Server Windchill - Protocolli HTTP e OAuth configurati. L'autenticazione SAML è facoltativa.
Dal momento che Windchill utilizza il protocollo HTTP, nello strumento di bilanciamento del carico non si verifica nessuna terminazione del certificato SSL.
Verificare l'URL dello strumento di bilanciamento del carico in ThingWorx Composer.
Per ptc-windchill-integration-connector, l'URL base è [https]://[LB-host]:[port]/[windchill-web-app]/oauth.
Per ptc-windchill-integration-connector-proxy:
URL base - [https]://[LB-host]
URL test connessione - [https]://[LB-host]:[port]/[windchill-web-app]/oauth/servlet/WindchillAuthGW/wt.httpgw.HTTPServer/echo
ThingWorx Navigate con autenticazione Windchill con un cluster Windchill configurato con il protocollo HTTPS
* 
L'utilizzo di certificati in una configurazione SSL bidirezionale assicura la crittografia e il trasferimento sicuro dei dati. L'applicazione è garantita dalla convalida in entrambe le parti per confermare la connessione e la comunicazione tra ThingWorx/ThingWorx Navigate e Windchill.
Dal momento che è supportato solo Windchill come provider di identificativi, la condivisione delle credenziali si limita solo a ThingWorx e Windchill.
Di seguito sono riportati i dettagli di configurazione.
Tipo di autenticazione di ThingWorx Navigate - Autenticazione Windchill con SSL bidirezionale
Protocollo dello strumento di bilanciamento del carico - HTTPS
Tipo di bilanciamento del carico - Layer 4
Server Windchill - Protocolli HTTPS e SSL bidirezionale configurati
Dal momento che Windchill utilizza il protocollo HTTPS, nessuna terminazione del certificato SSL avviene al bilanciamento del carico.
Verificare l'URL dello strumento di bilanciamento del carico in ThingWorx Composer. Il formato corretto per ptc-windchill-connector e ptc-windchill-connector-proxy è il seguente:
https://<loadbalancer_host>:port>/Windchill/sslClientAuth
* 
Solo uno strumento di bilanciamento del carico che opera su OSI Layer 4 può supportare questa configurazione.
Se si sta utilizzando uno strumento di bilanciamento del carico che opera su OSI Layer 7, è necessario utilizzare l'autenticazione Windchill con la configurazione host attendibile descritta di seguito.
ThingWorx Navigate con autenticazione Windchill con un cluster Windchill configurato con il protocollo HTTP
* 
Non si consiglia di utilizzare questa configurazione alternativa se non per fini dimostrativi. La configurazione connette ThingWorx Navigate e Windchill senza autenticazione SSO o SSL. Al contrario, la proprietà degli host attendibili è configurata.
Utilizzando un host attendibile, viene aperta la connessione tra ThingWorx Platform e Windchill per consentire tutte le comunicazioni provenienti dall'indirizzo IP dell'host attendibile identificato. In questo modo si aggiunge il rischio di attacchi MIM (Man in the Middle). Le informazioni riservate sono esposte con questa connessione.
Inoltre, anche nel caso in cui il sistema sia protetto da firewall, esiste il rischio di attacchi interni e configurazioni di rete errate. Se un utente malintenzionato viola uno di questi limiti di rete avrà una visibilità diretta delle informazioni non crittografate condivise. Si aggiungono così ulteriori rischi al prodotto Windchill esistente e alla configurazione di ThingWorx Navigate.
L'utente ha la responsabilità di determinare se si è disposti ad accettare il rischio di utilizzare questa configurazione. PTC non la consiglia e non si assume la responsabilità di eventuali violazioni della sicurezza o di attacchi ai sistemi configurati utilizzando l'opzione con host attendibile.
Di seguito sono riportati i dettagli di configurazione.
Tipo di autenticazione di ThingWorx Navigate - Autenticazione Windchill
Protocollo dello strumento di bilanciamento del carico - HTTPS
Server Windchill - Protocollo HTTP e proprietà trustedHost configurati. Le istruzioni per la configurazione della proprietà sono disponibili di seguito.
Dal momento che Windchill utilizza il protocollo HTTP, nello strumento di bilanciamento del carico non si verifica nessuna terminazione del certificato SSL.
Oltre ai seguenti passi, assicurarsi di eseguire i passi richiesti nella sezione relativa alla configurazione del cluster Windchill alla fine di Impostare ThingWorx Navigate con l'autenticazione Windchill.
Nello strumento di installazione ThingWorx Navigate Configuration, specificare il seguente URL nel campo per Windchill:
https://<loadbalancer_host>:port>/Windchill/trustedAuth
Inoltre, è necessario eseguire diversi passi manuali sul lato Windchill. È necessario definire gli indirizzi IP del server ThingWorx e dello strumento di bilanciamento del carico come host attendibili. In questo modo si salvaguarda la connessione tra ThingWorx Navigate e Windchill mediante lo strumento di bilanciamento del carico
e si migliora inoltre la sicurezza impedendo agli host client non attendibili di raggiungere lo schema /trustedAuth/ di Windchill tramite lo strumento di bilanciamento del carico.
Sul lato Windchill attenersi ai passi indicati di seguito.
1. Arrestare il method server Windchill.
2. Individuare il file WT_HOME/codebase/WEB-INF/web.xml e aprirlo in un editor di testo.
3. Trovare le sezioni TrustedSSLAuthFilter e TrustedAuthFilter, quindi aggiungere a entrambe il parametro clientHostHeader. Esempio:
<filter>
<description>Filter allowing a trusted SSL certificate to specify the remote user for the request</description>
<filter-name>TrustedSSLAuthFilter</filter-name>
<filter-class>wt.httpgw.filter.TrustedAuthFilter</filter-class>
<init-param>
<param-name>trustTrustedHosts</param-name>
<param-value>false</param-value>
</init-param>
<init-param>
<param-name>clientHostHeader</param-name>
<param-value>X-Forwarded-For</param-value>
</init-param>
</filter>
<filter>
<description>Filter allowing a trusted client to specify the remote user for the request</description>
<filter-name>TrustedAuthFilter</filter-name>
<filter-class>wt.httpgw.filter.TrustedAuthFilter</filter-class>
<init-param>
<param-name>clientHostHeader</param-name>
<param-value>X-Forwarded-For</param-value>
</init-param>
</filter>
4. Aggiungere il parametro TrustedHostFilter allo stesso file. Esempio:
<filter>
<description>Filter allowing a trusted client to specify the remote user for the request</description>
<filter-name>TrustedHostFilter</filter-name>
<filter-class>wt.servlet.TrustedHostFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>TrustedHostFilter</filter-name>
<url-pattern>/trustedAuth/*</url-pattern>
</filter-mapping>
5. Salvare e chiudere il file web.xml.
6. Ora aprire la shell Windchill in un prompt dei comandi.
7. Se wt.auth.trustedHosts non è già stato aggiunto, aggiungere la proprietà di seguito a xconf.properties:
<Property name="wt.auth.trustedHosts" overridable="true"
targetFile="codebase/wt.properties"
value="<TWXHost_IP> <LBHost_IP>">
TWXHost è il nome host di ThingWorx e LBHost è il nome host dello strumento di bilanciamento del carico.
8. Eseguire xconfmanager -p.
9. Se la proprietà wt.auth.trustedHosts non è impostata nel file wt.properties, impostarla utilizzando il comando di xconfmanager riportato di seguito. Oppure aggiungerla direttamente in wtproperties:
xconfmanager --set wt.auth.trustedHosts==<TWXHost_IP> <LBHost_IP> -t codebase/wt.properties -p
TWXHost è il nome host di ThingWorx e LBHost è il nome host dello strumento di bilanciamento del carico.
10. Avviare il method server Windchill.
Windchill è ora configurato con la proprietà trustedHost.
* 
Per ulteriori informazioni sull'utilizzo dell'utilità xconfmanager, cercare l'argomento "Using the xconfmanager Utility" in Windchill Help Center.