Aggiornamento a ThingWorx Navigate 1.8 > Utilizzo di SSL per una connessione protetta
  
Utilizzo di SSL per una connessione protetta
Il sito può utilizzare la configurazione SSL bidirezionale per proteggere la comunicazione tra il server ThingWorx e l'applicazione Windchill. PTC consiglia l'uso di SSL quando si lavora in un ambiente di produzione. L'estensione può utilizzare la configurazione SSL sia per autenticare reciprocamente i server sia per proteggere la comunicazione.
Una connessione SSL richiede che entrambi i sistemi siano reciprocamente attendibili. A tal fine, il modello di oggetto WindchillConnector nuovo e precedente deve essere configurato in modo da fare riferimento alla chiave Java e ai truststore nel server ThingWorx che forniscono le chiavi per la transazione. Il server HTTP nel server Windchill deve essere configurato in modo che consideri tali chiavi attendibili.
Le configurazioni SSL variano considerevolmente e questa guida non descrive tutte le opzioni disponibili in una configurazione SSL. I passi illustrati di seguito, invece, forniscono una panoramica del processo per la configurazione di SSL.
In questa procedura si presuppone che ThingWorx e Windchill siano entrambi configurati per l'utilizzo di SSL per le rispettive comunicazioni standard. Si basa inoltre sugli script di configurazione che sono forniti con la versione più recente di PTC HTTP Server. La versione più recente di PTC HTTP Server è inclusa in Windchill 11.0 M030 e versioni successive.
* 
È possibile utilizzare un certificato commerciale attendibile con caratteri jolly per Windchill e un certificato autofirmato per la comunicazione tra ThingWorx e Windchill.
Configurazione di ThingWorx con keystore e truststore
ThingWorx richiede l'utilizzo di keystore e truststore Java.
1. Creare un truststore per ThingWorx e importare il certificato SSL di Windchill.
2. Creare un keystore per ThingWorx e generare KeyPair in keystore.
3. Configurare Windchill in modo che consideri ThingWorx attendibile.
4. Fare riferimento a questi archivi nella configurazione del modello di oggetto WindchillConnector utilizzato per connettere ThingWorx al sistema Windchill da proteggere.
Configurazione di Windchill per l'autenticazione client
Nel server Windchill, configurare l'autenticazione SSL in PTC HTTP Server per considerare attendibile la chiave e il certificato ThingWorx.
* 
Gli esempi di codice sono stati riformattati in base alle dimensioni della pagina e possono contenere numeri di riga, caratteri di modifica nascosti (ad esempio, tabulazioni e caratteri di fine riga) e spazi estranei. Se si decide di tagliare e incollare il codice, verificare l'eventuale presenza di tali caratteri e rimuoverli prima di utilizzare l'esempio nell'applicazione in uso.
1. Aggiornare la configurazione di PTC HTTP Server in modo che faccia riferimento al file di certificati CA.
a. Creare un file in <HTTPSERVER_HOME>\conf\ca-bundle.crt. Questa posizione è consigliata ma non obbligatoria.
b. Salvare il file ca-bundle.crt.
c. Creare un file sslclientauth.conf nel percorso <HTTPSERVER_HOME>\conf\sslvhostconf.d.
d. Aggiungere SSLCACertificateFile a <PATH_TO>\ca-bundle.crt in modo che faccia riferimento al file ca-bundle.crt. Esempio:
SSLCACertificateFile
<HTTP_Server>\conf\ca-bundle.crt
e. Salvare le modifiche.
2. Aggiungere il certificato del client ThingWorx all'elenco di certificati CA attendibili di PTC HTTP Server.
a. Modificare il file ca-bundle.crt puntato in precedenza nella voce SSLCACertificateFile.
* 
Se il file non esiste ancora, crearlo insieme a tutte le directory necessarie.
b. Modificare il file ca-bundle.crt e incollare il contenuto del file PEM del certificato del client ThingWorx.
c. Salvare le modifiche.
3. Configurare PTC HTTP Server per l'URL sslClientAuth.
a. Individuare il nome dell'applicazione Web di Windchill in <windchill-home>/codebase/wt.properties nella voce wt.webapp.name.
b. Aprire una shell o un prompt dei comandi e immettere il comando indicato di seguito.
cd <HTTPSERVER_HOME>ant -f webAppConfig.xml -DappName=[windchill-web-app] -Dresource=sslClientAuth -DresourceAuthType=sslClientAuth addAuthResource
c. Configurare Windchill in modo che consideri attendibile il certificato di ThingWorx.
a. Modificare <windchill-home>/codebase/WEB-INF/web.xml.
b. Individuare <filter-name>TrustedSSLAuthFilter</filtername>.
c. Aggiungere un altro elemento <init-param> dopo quello esistente, dove [thingworx-cert-name] è il nome del certificato di ThingWorx.
<init-param><param-name>trustedSubjectPattern.1</param-name><param-value>
[thingworx-cert-name]</param-value></init-param>
d. Salvare le modifiche.
Configurazione dei connettori Windchill
* 
Questa configurazione si applica quando si utilizzano task Info*Engine solo con i connettori precedenti.
È inoltre possibile eseguire i task Info*Engine utilizzando il connettore OData. Vedere "Esecuzione dei servizi Info*Engine con ODataConnector" in Personalizzazione di ThingWorx Navigate.
1. In ThingWorx Composer, modificare il modello di oggetto WindchillConnector che rappresenta la connessione al sistema Windchill da configurare.
2. Specificare il percorso di ThingWorxKeyStore.jks (vedere l'esempio nella schermata) e indicare anche la password.
3. Specificare il percorso di ThingWorxTrustStore.jks (vedere l'esempio nella schermata) e indicare anche la password.
* 
Si consiglia di utilizzare il tipo JKS, ma non è obbligatorio.
4. Specificare l'indirizzo Windchillhttps e la porta SSL.
5. Salvare l'oggetto.
6. Visualizzare il Log applicazioni di ThingWorx per accertarsi che non siano presenti errori di configurazione.
7. Avviare ptc-connected-demo-mashup per verificare la configurazione SSL attendibile di ThingWorx - Windchill.
*