Creazione delle connessioni PingFederate
In PingFederate creare gli endpoint client a cui si connettono le applicazioni nella soluzione SSO quando ottengono o verificano i token di accesso o autenticano gli utenti. Si consiglia di creare un client separato per ciascun ruolo che un'applicazione esegue nella soluzione SSO. Ciò consente di ottimizzare le impostazioni nel client per il ruolo specifico.
Per l'SSO ThingWorx è necessario creare in PingFederate i client seguenti.
Connessione SP per ThingWorx come provider di servizi
Client OAuth per ThingWorx come provider di servizi
Per informazioni dettagliate sulla creazione e sulla configurazione delle connessioni PingFederate, fare riferimento alla documentazione relativa a PingFederate o contattare il supporto clienti di PingIdentity. Le procedure seguenti includono le impostazioni necessarie per l'SSO ThingWorx. Tuttavia potrebbero essere necessarie impostazioni aggiuntive per la soluzione SSO dell'azienda.
Connessione SP per ThingWorx come provider di servizi
Questa connessione viene utilizzata per l'autenticazione SAML. ThingWorx indirizza le richieste di accesso utente a PingFederate.
1. Nella pagina IDP Configuration selezionare SP Connections, quindi fare clic su Create New.
2. Nella sezione Connection Type selezionare l'opzione Browser SSO Profiles per specificare il protocollo SAML 2.0.
3. Nella sezione Connection Options selezionare l'opzione Browser SSO.
4. Nella sezione General Info effettuare le operazioni descritte di seguito.
a. Impostare Partner's Entity ID (Connection ID) su un valore univoco. Prendere nota di questo ID in quanto servirà durante la configurazione del file sso-settings.json.
b. Immettere un nome descrittivo per il campo Connection Name. Si tratta del nome che viene visualizzato nell'elenco di connessioni SP.
c. Impostare Base URL sull'URL che ospita il provider di servizi dell'applicazione Web (ThingWorx).
5. Nella sezione Protocol Settings impostare Assertion Consumer Service URL Endpoint su URL:/Thingworx/saml/SSO.
6. Nella sezione Credentials impostare Digital Signature Settings su Selected Certificate.
7. Nella sezione Signature Verification aggiungere un certificato per gli elementi seguenti:
Signature Verification Certificate: Selected Certificate
Signature Verification Certificate: Selected Encryption Certificate
Select XML Encryption Certificate: Selected Encryption Certificate
8. Verificare che il nuovo provider di servizi sia attivo. Visualizzare la connessione SP. Un indicatore del pulsante di opzione nella parte superiore della pagina Activation & Summary deve essere impostato su Active.
9. Fare clic su Salva.
PingFederate utilizza un meccanismo denominato contratto di regole per creare un ponte tra le connessioni tra i provider di servizi e il provider di identificativi su cui si basa PingFederate. È necessario creare un contratto di regole per questa connessione SP. Quando si esegue questa operazione, elencare eventuali attributi che devono essere scambiati nelle condizioni SAML.
Per ulteriori informazioni, fare riferimento alla sezione "Working with Third-Party Identity Providers" della PTC Single Sign-on Architecture and Configuration Overview Guide.
Client OAuth per ThingWorx come provider di servizi
Il client OAuth è un punto di connessione che consente a PingFederate di fornire i token di accesso ad ThingWorx. ThingWorx utilizza questi token di accesso per richiedere le risorse protette da OAuth dai provider di risorse.
1. Nella pagina OAuth Settings selezionare Clients, quindi fare clic su Create New.
2. Nel campo Client ID immettere un valore, che verrà utilizzato come valore del parametro AuthorizationServersSettings.<AuthServerId>.clientId durante la configurazione del file sso-settings.json.
3. Selezionare Client Secret e immettere un valore segreto del client. Prendere nota di questo valore perché è utilizzato come valore del parametro AuthorizationServersSettings.<AuthServerId>.clientSecret durante la configurazione del file sso-settings.json.
4. Nel campo Name immettere un valore, che verrà visualizzato nell'elenco dei client di PingFederate.
5. Nel campo Description inserire una descrizione.
6. Nella sezione Redirect URIS immettere l'URI di reindirizzamento del server ThingWorx. Ad esempio: http://<serverutente>:<portautente>/Thingworx/oauth2_authorization_code_redirect, dove <serverutente> è il server ThingWorx dell'utente.
* 
Se è installato in un'istanza di ThingWorx Core che si sta configurando per SSO, specificare questo valore come https://<nome-host Nginx ThingWorx Flow>:<numero-porta Nginx ThingWorx Flow>/Thingworx/oauth2_authorization_code_redirect.
7. Nella sezione Allow Grant Types selezionare Refresh Token e Authorization Code.
8. Nella sezione Persistent Grants Expiration selezionare Grants Do Not Expire.
9. Nella sezione Refresh Token Rolling Policy selezionare Roll.