Configurazione e caricamento di OAuth
Prima di creare un connettore OAuth per un servizio o un'utilità di terze parti, è necessario caricare il relativo provider OAuth sul server ThingWorx Flow. Il modello di file JSON della configurazione OAuth di esempio è disponibile nel parametro oauthConfigurations del servizio LoadOAuthConfiguration di WorkflowSubsystem in ThingWorx Composer. Di seguito è riportata una panoramica generale del processo di caricamento di OAuth.
1. Creare un'app nel sistema di terze parti.
2. Recuperare la coppia ID client-segreto client dall'app e aggiungerla al file JSON della configurazione OAuth di esempio. Aggiungere i valori di eventuali ulteriori parametri necessari per la configurazione OAuth.
Per rimuovere le impostazioni di OAuth per un servizio o un'utilità di terze parti, è necessario rimuovere l'intero oggetto JSON. Ad esempio, per rimuovere le impostazioni di OAuth per Gmail, rimuovere il seguente oggetto JSON:
"google_gmail": {
"Gmail": {
"CLIENT_ID": "<Client ID>"
"CLIENT_SECRET": "<Secret>"
}
},
Se è stato rimosso un oggetto JSON per un servizio o un'utilità di terze parti e si desidera aggiungere le relative impostazioni di OAuth in un secondo momento, aggiungere lo snippet di codice JSON dal modello di file JSON della configurazione OAuth di esempio e immettere i valori necessari per la configurazione OAuth.
* 
Il file di configurazione di esempio contiene valori di configurazione dei connettori che rappresentano il servizio o l'utilità di terze parti. Ad esempio, per Gmail non modificare google_gmail nell'oggetto JSON. Per aggiungere più provider OAuth per Gmail, ad esempio Gmail-1 e Gmail-2, aggiungere il seguente oggetto JSON al file di esempio:
{
"google_gmail": {
"Gmail-1": {
"CLIENT_ID": "<client id for Gmail - 1 account here>",
"CLIENT_SECRET": "<client secret for Gmail - 1 account here>"
},
"Gmail-2": {
"CLIENT_ID": "<client id for Gmail - 2 account here>",
"CLIENT_SECRET": "<client secret for Gmail - 2 account here>"
}
}
}
3. Eseguire il servizio LoadOAuthConfiguration da ThingWorx Composer per caricare il provider OAuth sul server ThingWorx Flow.
ThingWorx Flow supporta OAuth per i servizi e le utilità seguenti:
Azure
Bitly
Box
GitHub
GitLab
Gmail
HTTP
JIRA
OData
OSLC
SOAP
Slack
Trello
Configurazione e caricamento di OAuth per servizi e utilità
Azure
Attenersi alla procedura descritta di seguito ogni volta che si desidera aggiungere un provider OAuth per un'applicazione Azure.
1. Creare un'applicazione Azure.
Durante la creazione dell'applicazione impostare i valori appropriati dei parametri seguenti:
Permessi API - Gestione del servizio Azure.
URI di reindirizzamento - Immettere l'URL restituito di ThingWorx Flow nel formato https://<NomeHost:Porta>/Thingworx/Oauths/oauth/return.
2. Per aggiungere un provider OAuth per Azure, immettere i valori seguenti nel file JSON della configurazione OAuth:
Parametro
Descrizione
Valore
CLIENT_ID
Specifica l'identificatore client da utilizzare per la convalida dei token di accesso dal server di autorizzazione.
Recuperare il valore dall'applicazione Azure.
CLIENT_SECRET
Valore segreto del client.
Recuperare il valore dall'applicazione Azure.
"azure": {
"Azure": {
"CLIENT_SECRET": "<client secret here>",
"CLIENT_ID": "<client id here>"
}
}
3. Eseguire il servizio LoadOAuthConfiguration da ThingWorx Composer per caricare il provider OAuth sul server ThingWorx Flow.
Bitly
Attenersi alla procedura descritta di seguito ogni volta che si desidera aggiungere un provider OAuth per un'app Bitly.
1. Creare un'app Bitly.
Durante la creazione dell'app impostare l'URI di reindirizzamento su un URL restituito di ThingWorx Flow nel formato https://<NomeHost:Porta>/Thingworx/Oauths/oauth/return.
2. Per aggiungere un provider OAuth per Bitly, immettere i valori seguenti nel file JSON della configurazione OAuth:
Parametro
Descrizione
Valore
CLIENT_ID
Specifica l'identificatore client da utilizzare per la convalida dei token di accesso dal server di autorizzazione.
Recuperare il valore dall'app Bitly.
CLIENT_SECRET
Valore segreto del client.
Recuperare il valore dall'app Bitly.
"bitly": {
"Bitly": {
"CLIENT_SECRET": "<client secret here>",
"CLIENT_ID": "<client id here>"
}
}
3. Eseguire il servizio LoadOAuthConfiguration da ThingWorx Composer per caricare il provider OAuth sul server ThingWorx Flow.
Box
Attenersi alla procedura descritta di seguito ogni volta che si desidera aggiungere un provider OAuth per un'app Box.
1. Creare un'app Box.
Durante la creazione dell'app impostare i valori appropriati dei parametri seguenti:
Ambiti applicazione - Selezionare tutti gli ambiti.
URI di reindirizzamento - Immettere l'URL restituito di ThingWorx Flow nel formato https://<NomeHost:Porta>/Thingworx/Oauths/oauth/return.
Nel video seguente vengono illustrati i passi necessari per attivare la configurazione OAuth per Box:
2. Per aggiungere un provider OAuth per Box, immettere i valori seguenti nel file JSON della configurazione OAuth:
Parametro
Descrizione
Valore
CLIENT_ID
Specifica l'identificatore client da utilizzare per la convalida dei token di accesso dal server di autorizzazione.
Recuperare il valore dall'app Box.
CLIENT_SECRET
Valore segreto del client.
Recuperare il valore dall'app Box.
"box": {
"Box": {
"CLIENT_SECRET": "client secret here>",
"CLIENT_ID": "<client id here>"
}
}
3. Eseguire il servizio LoadOAuthConfiguration da ThingWorx Composer per caricare il provider OAuth sul server ThingWorx Flow.
Dialogflow
Attenersi alla procedura descritta di seguito ogni volta che si desidera aggiungere un provider OAuth per un'app Dialogflow.
Durante la creazione dell'app immettere l'URI di reindirizzamento come URL restituito di ThingWorx Flow, ad esempio https://<NomeHost:Porta>/Thingworx/Oauths/oauth/return.
Per aggiungere un provider OAuth per l'app Dialogflow, immettere i valori seguenti nel file JSON della configurazione OAuth:
Parametro
Descrizione
Valore
CLIENT_ID
Specifica l'identificatore client da utilizzare per la convalida dei token di accesso dal server di autorizzazione.
Recuperare il valore dall'app Google.
CLIENT_SECRET
Valore segreto del client.
Recuperare il valore dall'app Google.
"apiai": {
"Dialogflow": {
"CLIENT_SECRET": "<client secret here>",
"CLIENT_ID": "<client id here>"
}
}
2. Eseguire il servizio LoadOAuthConfiguration da ThingWorx Composer per caricare il provider OAuth sul server ThingWorx Flow.
Dropbox
Attenersi alla procedura descritta di seguito ogni volta che si desidera aggiungere un provider OAuth per un'app Dropbox.
1. Creare un'app Dropbox. Questo link fornisce informazioni sull'OAuth di Dropbox.
Durante la creazione dell'app impostare i valori appropriati per i parametri seguenti:
API - Selezionare l'API di Dropbox.
Tipo di accesso - Dropbox completo.
URI di reindirizzamento - Immettere l'URL restituito di ThingWorx Flow nel formato https://<NomeHost:Porta>/Thingworx/Oauths/oauth/return.
2. Per aggiungere un provider OAuth per Dropbox, immettere i valori seguenti nel file JSON della configurazione OAuth:
Parametro
Descrizione
Valore
CLIENT_ID
Specifica l'identificatore client da utilizzare per la convalida dei token di accesso dal server di autorizzazione.
Recuperare il valore dall'app Dropbox.
CLIENT_SECRET
Valore segreto del client.
Recuperare il valore dall'app Dropbox.
"dropbox": {
"Dropbox": {
"CLIENT_SECRET": "<client secret here>",
"CLIENT_ID": "<client id here>"
}
}
3. Eseguire il servizio LoadOAuthConfiguration da ThingWorx Composer per caricare il provider OAuth sul server ThingWorx Flow.
Dynamics 365 CRM
Attenersi alla procedura descritta di seguito ogni volta che si desidera aggiungere un provider OAuth per un'applicazione Dynamics 365 CRM.
Durante la creazione dell'app impostare l'URI di reindirizzamento su un URL restituito di ThingWorx Flow nel formato https://<NomeHost:Porta>/Thingworx/Oauths/oauth/return.
2. Per aggiungere un provider OAuth per Dynamics 365 CRM, immettere i valori seguenti nel file JSON della configurazione OAuth:
Parametro
Descrizione
Valore
CLIENT_ID
Specifica l'identificatore client da utilizzare per la convalida dei token di accesso dal server di autorizzazione.
Recuperare il valore dall'applicazione Azure.
CLIENT_SECRET
Valore segreto del client.
Recuperare il valore dall'applicazione Azure.
"dynamics365": {
"Dynamics365": {
"CLIENT_SECRET": "<client secret here>",
"CLIENT_ID": "<client id here>"
}
}
3. Eseguire il servizio LoadOAuthConfiguration da ThingWorx Composer per caricare il provider OAuth sul server ThingWorx Flow.
Excel Online, Office 365, OneDrive
Attenersi alla procedura descritta di seguito ogni volta che si desidera aggiungere un provider OAuth per un'applicazione Excel Online, Office 365 o OneDrive.
1. Creare un'applicazione Azure.
Durante la creazione dell'applicazione impostare i valori appropriati dei parametri seguenti:
Permessi API - Gestione del servizio Azure.
URI di reindirizzamento - Immettere l'URL restituito di ThingWorx Flow nel formato https://<NomeHost:Porta>/Thingworx/Oauths/oauth/return.
2. Per aggiungere un provider OAuth per Excel Online, Office 365 o OneDrive, immettere i valori seguenti nel file JSON della configurazione OAuth:
Parametro
Descrizione
Valore
CLIENT_ID
Specifica l'identificatore client da utilizzare per la convalida dei token di accesso dal server di autorizzazione.
Recuperare il valore dall'applicazione Azure.
CLIENT_SECRET
Valore segreto del client.
Recuperare il valore dall'applicazione Azure.
Excel Online
"excel": {
"Excel Online": {
"CLIENT_SECRET": "<client secret here>",
"CLIENT_ID": "<client id here>"
}
}
Office 365
"microsoft_365": {
"Office 365": {
"CLIENT_SECRET": "<client secret here>",
"CLIENT_ID": "<client id here>"
}
}
OneDrive
"onedrive": {
"OneDrive": {
"CLIENT_SECRET": "<client secret here>",
"CLIENT_ID": "<client id here>"
}
}
3. Eseguire il servizio LoadOAuthConfiguration da ThingWorx Composer per caricare il provider OAuth sul server ThingWorx Flow.
GitHub
Attenersi alla procedura descritta di seguito ogni volta che si desidera aggiungere un provider OAuth per un'app GitHub.
1. Creare un' app OAuth per GitHub.
Durante la creazione dell'app impostare l'URL di callback di autorizzazione su un URL restituito di ThingWorx Flow nel formato https://<NomeHost:Porta>/Thingworx/Oauths/oauth/return.
2. Per aggiungere un provider OAuth per GitHub, immettere i valori seguenti nel file JSON della configurazione OAuth:
Parametro
Descrizione
Valore
CLIENT_ID
Specifica l'identificatore client da utilizzare per la convalida dei token di accesso dal server di autorizzazione.
Recuperare il valore dall'app GitHub.
CLIENT_SECRET
Valore segreto del client.
Recuperare il valore dall'app GitHub.
"github": {
"Github": {
"CLIENT_SECRET": "<client secret here>",
"CLIENT_ID": "<client id here>"
}
}
3. Eseguire il servizio LoadOAuthConfiguration da ThingWorx Composer per caricare il provider OAuth sul server ThingWorx Flow.
GitLab
Attenersi alla procedura descritta di seguito ogni volta che si desidera aggiungere un provider OAuth per un'applicazione GitLab.
1. Creare un'applicazione GitLab.
Durante la creazione dell'applicazione impostare i valori appropriati dei parametri seguenti:
Ambiti - api, read_user, read_repository, read_registry.
URI di reindirizzamento - Immettere l'URL restituito di ThingWorx Flow, ad esempio https://<NomeHost:Porta>/Thingworx/Oauths/oauth/return.
2. Per aggiungere un provider OAuth per GitLab, immettere i valori seguenti nel file JSON della configurazione OAuth:
Parametro
Descrizione
Valore
CLIENT_ID
Specifica l'identificatore client da utilizzare per la convalida dei token di accesso dal server di autorizzazione.
Recuperare il valore dall'app GitLab.
CLIENT_SECRET
Valore segreto del client.
Recuperare il valore dall'app GitLab.
"gitlab": {
"Gitlab": {
"CLIENT_SECRET": "<client secret here>",
"CLIENT_ID": "<client id here>"
}
}
3. Eseguire il servizio LoadOAuthConfiguration da ThingWorx Composer per caricare il provider OAuth sul server ThingWorx Flow.
Gmail, Google Drive, Moduli Google, Fogli Google, Google Tasks, Google Traduttore, YouTube
Attenersi alla procedura descritta di seguito ogni volta che si desidera aggiungere un provider OAuth per un'app Google.
Durante la creazione dell'app immettere l'URI di reindirizzamento come URL restituito di ThingWorx Flow, ad esempio https://<NomeHost:Porta>/Thingworx/Oauths/oauth/return.
Per aggiungere un provider OAuth per l'app Google, immettere i valori seguenti nel file JSON della configurazione OAuth:
Parametro
Descrizione
Valore
CLIENT_ID
Specifica l'identificatore client da utilizzare per la convalida dei token di accesso dal server di autorizzazione.
Recuperare il valore dall'app Google.
CLIENT_SECRET
Valore segreto del client.
Recuperare il valore dall'app Google.
Gmail
"google_gmail": {
"Gmail": {
"CLIENT_SECRET": "<client secret here>",
"CLIENT_ID": "<client id here>"
}
}
Google Drive
"google_drive": {
"Google Drive": {
"CLIENT_SECRET": "<client secret here>",
"CLIENT_ID": "<client id here>"
}
}
Moduli Google
"google_form": {
"Google Form": {
"CLIENT_SECRET": "<client secret here>",
"CLIENT_ID": "<client id here>"
}
}
Fogli Google
"google_sheet": {
"Google Sheet": {
"CLIENT_SECRET": "<client secret here>",
"CLIENT_ID": "<client id here>"
}
}
Google Tasks
"google_task": {
"Google Tasks": {
"CLIENT_SECRET": "<client secret here>",
"CLIENT_ID": "<client id here>"
}
}
Google Traduttore
"google_translator": {
"Google Translator": {
"CLIENT_SECRET": "<client secret here>",
"CLIENT_ID": "<client id here>"
}
}
Youtube
"youtube": {
"Youtube": {
"CLIENT_SECRET": "<client secret here>",
"CLIENT_ID": "<client id here>"
}
}
2. Eseguire il servizio LoadOAuthConfiguration da ThingWorx Composer per caricare il provider OAuth sul server ThingWorx Flow.
HTTP
Attenersi alla procedura descritta di seguito ogni volta che si desidera aggiungere un provider OAuth per un server HTTP.
1. Configurare OAuth nel server HTTP.
2. Per aggiungere un provider OAuth per il server HTTP, immettere i valori seguenti nel file JSON della configurazione OAuth:
Parametro
Descrizione
Valore
AUTH_URL
[obbligatorio]
Specifica l'endpoint OAuth per le richieste di token.
Recuperare il valore dal client OAuth.
Esempio: \authorize
TOKEN_URL
[obbligatorio]
Fornisce il token di accesso.
Recuperare il valore dal client OAuth.
Esempio: \token
VALIDATE_URL
[obbligatorio]
Specifica l'URL utilizzato per convalidare il token di accesso.
Recuperare il valore dal client OAuth.
Se non si desidera implementare VALIDATE_URL, specificare l'URL del server accessibile.
Esempio: https://www.dropbox.com/
Se si desidera implementare VALIDATE_URL, utilizzare il metodo GET per creare l'API.
REFRESH_URL
Specifica l'URL da utilizzare per ottenere i token di accesso.
Recuperare il valore dal client OAuth.
Esempio: \token
SCOPE
[obbligatorio]
Fornisce un elenco di ambiti separati da spazi per l'applicazione.
<AMBITO 1> <AMBITO 2>
BASE_URL
[obbligatorio]
Specifica l'URL del server di autenticazione centralizzata.
Recuperare il valore dal client OAuth.
NEED_RESOURCE_URL
[obbligatorio]
Specifica se l'utente deve specificare RESOURCE_URL durante l'aggiunta del connettore OAuth.
Se si sceglie True per questa impostazione, è necessario specificare il valore di RESOURCE_URL durante l'aggiunta del provider OAuth.
Se si sceglie False, l'utente deve specificare il valore di RESOURCE_URL durante l'aggiunta del connettore OAuth.
true o false
RESOURCE_URL
Specifica l'URL del server delle risorse.
CLIENT_ID
[obbligatorio]
Specifica l'identificatore client da utilizzare per la convalida dei token di accesso dal server di autorizzazione.
Recuperare il valore dal client OAuth.
CLIENT_SECRET
[obbligatorio]
Valore segreto del client.
Recuperare il valore dal client OAuth.
"devtools": {
"HTTP": {
"AUTH_URL": "<auth url here>",
"CLIENT_SECRET": "<client secret here>",
"TOKEN_URL": "<token url here>",
"VALIDATE_URL": "<validate url here>",
"CLIENT_ID": "<client id here>",
"SCOPE": "<scopes separated by spaces>",
"RESOURCE_URL": "<resource url here>",
"BASE_URL": "<base url here>",
"REFRESH_URL": "<refresh url here>",
"NEED_RESOURCE_URL": "<boolean value here>"
}
}
3. Eseguire il servizio LoadOAuthConfiguration da ThingWorx Composer per caricare il provider OAuth sul server ThingWorx Flow.
JIRA
Attenersi alla procedura descritta di seguito ogni volta che si desidera aggiungere un provider OAuth per un'app JIRA.
1. Creare un'app JIRA.
Durante la creazione dell'app impostare i valori appropriati dei parametri seguenti:
Ambiti - view Jira issue data (read:jira-work), create and manage issues (write:jira-work), view user profiles (read:jira-user)
URL di callback - Immettere l'URL restituito di ThingWorx Flow, ad esempio https://<NomeHost:Porta>/Thingworx/Oauths/oauth/return.
2. Per aggiungere un provider OAuth per JIRA, immettere i valori seguenti nel file JSON della configurazione OAuth:
Parametro
Descrizione
Valore
CLIENT_ID
Specifica l'identificatore client da utilizzare per la convalida dei token di accesso dal server di autorizzazione.
Recuperare il valore dall'app JIRA.
CLIENT_SECRET
Valore segreto del client.
Recuperare il valore dall'app JIRA.
"jira": {
"JIRA": {
"CLIENT_SECRET": "<client secret here>",
"CLIENT_ID": "<client id here>"
}
}
3. Eseguire il servizio LoadOAuthConfiguration da ThingWorx Composer per caricare il provider OAuth sul server ThingWorx Flow.
OData
Attenersi alla procedura descritta di seguito ogni volta che si desidera aggiungere un provider OAuth per l'istanza di OData.
1. Configurare OAuth nell'istanza di OData.
2. In base alla configurazione di OAuth, immettere i valori nel file JSON della configurazione OAuth. Fare riferimento al file config.json di esempio. Di seguito sono riportati i valori di esempio che è possibile immettere per il caricamento di OAuth.
Parametro
Descrizione
Valore
CLIENT_ID
Specifica l'identificatore client da utilizzare per la convalida dei token di accesso dal server di autorizzazione.
Recuperare il valore dall'applicazione OAuth.
CLIENT_SECRET
Valore segreto del client.
Recuperare il valore dall'applicazione OAuth.
VALIDATE_URL
Specifica l'URL utilizzato per convalidare il token di accesso.
Recuperare il valore dal client OAuth.
REFRESH_URL
Specifica l'URL da utilizzare per ottenere i token di accesso.
Recuperare il valore dal client OAuth.
TOKEN_URL
Fornisce il token di accesso.
Recuperare il valore dal client OAuth.
AUTH_URL
Specifica l'endpoint OAuth per le richieste di token.
Recuperare il valore dal client OAuth.
{
"name": "odata",
"created_at": "2017-02-27T09:26:46.890Z",
"updated_at": "2017-02-27T09:26:46.890Z",
"uid": "oaufe1978bc9e71d999ef2ba4",
"icon": "odata",
"version": "v1",
"__v": 0,
"title": "Dynamics 365",
"oauth2_include": [
"{\"resource\":\"{resource}\"}"
],
"oauth2_required": [
{
"title": "Tenant ID",
"id": "tenant",
"default": "common",
"description": "Enter Dynamics 365 tenant id, leave it common if you don't have it"
},
{
"title": "Resource URL",
"id": "resource",
"description": "Enter Dynamics 365 resource URL, eg: https://example.crm5.dynamics.com"
}
],
"oauth2_params_scope": [
"{\"user_impersonation\":\"User Impersonation\"}"
],

"oauth2_refresh_data": [
"{\"client_secret\":\"{client_secret}\"}",
"{\"grant_type\":\"refresh_token\"}",
"{\"client_id\":\"{client_id}\"}",
"{\"resource\":\"{resource}\"}",
"{\"refresh_token\":\"{refresh_token}\"}"
],
"oauth2_refresh_url": "/token",
"oauth2_token_data": [
"{\"redirect_uri\":\"{redirect_uri}\"}",
"{\"client_id\":\"{client_id}\"}",
"{\"client_secret\":\"{client_secret}\"}",
"{\"resource\":\"{resource}\"}",
"{\"grant_type\":\"authorization_code\"}"
],
"oauth2_token_url": "/token",
"oauth2_auth_query": [
"{\"client_id\":\"{client_id}\"}",
"{\"response_type\":\"code\"}",
"{\"resource\":\"{resource}\"}",
"{\"scope\":\"{scope}\"}",
"{\"prompt\":\"login\"}",
"{\"redirect_uri\":\"{redirect_uri}\"}"
],
"oauth2_auth_url": "/authorize",
"oauth2_no_state": false,
"env_pre_prod_params": [
"{\"client_secret\":\"{{{pre_prod.CLIENT_SECRET}}}\"}",
"{\"redirect_uri\":\"{OAUTH_ENDPOINT_OAUTH_RETURN}\"}"
],
"env_production_params": [
"{\"redirect_uri\":\"{OAUTH_ENDPOINT_OAUTH_RETURN}\"}",
"{\"client_id\":\"{{{production.CLIENT_ID}}}\"}",
"{\"client_secret\":\"{{{production.CLIENT_SECRET}}}\"}"
],
"env_staging_params": [
"{\"redirect_uri\":\"{OAUTH_ENDPOINT_OAUTH_RETURN}\"}",
"{\"client_id\":\"{{{staging.CLIENT_ID}}}\"}",
"{\"client_secret\":\"{{{staging.CLIENT_SECRET}}}\"}"
],
"env_development_params": [
"{\"client_id\":\"{{{development.CLIENT_ID}}}\"}",
"{\"client_secret\":\"{{{development.CLIENT_SECRET}}}\"}",
"{\"redirect_uri\":\"{OAUTH_ENDPOINT_OAUTH_RETURN}\"}"
],
"env_local_params": [
"{\"client_id\":\"{{{local.CLIENT_ID}}}\"}",
"{\"client_secret\":\"{{{local.CLIENT_SECRET}}}\"}",
],
"base_url": "https://login.microsoftonline.com/{tenant}/oauth2",
"oauth_type": "OAuth2",
"development_phase": "new",
"advanced_enabled": true,
"express_enabled": true,
"deleted_at": null,
"published": true
}
Fornire le informazioni sull'intestazione nella matrice "oauth2_validate_headers", come illustrato nella matrice di esempio:
{
"oauth2_validate_headers": [
"{\"Authorization\":\"Bearer {access_token}\"}",
"{\"Content-Type\":\"application/json\"}"
]
}
Fornire le informazioni sull'ambito nella matrice "oauth2_params_scope", come illustrato nella matrice di esempio:
{
"oauth2_params_scope": [
"{\"READ\":\"READ_PRIVILEGES\"}"
]
}
Fornire le informazioni sul parametro needurl nella matrice "oauth2_params_other", come illustrato nella matrice di esempio:
{
"oauth2_params_other": [
"{\"needurl\":\"true\"}"
]
}
3. Eseguire il servizio LoadOAuthConfiguration da ThingWorx Composer per caricare il provider OAuth sul server ThingWorx Flow.
OSLC
Attenersi alla procedura descritta di seguito ogni volta che si desidera aggiungere un provider OAuth per il server OSLC.
2. Per aggiungere un provider OAuth per OSLC, immettere i valori seguenti nel file JSON della configurazione OAuth:
Parametro
Descrizione
Valore
CLIENT_ID
Specifica l'identificatore client da utilizzare per la convalida dei token di accesso dal server di autorizzazione.
Recuperare il valore dal client OAuth.
CLIENT_SECRET
Valore segreto del client.
Recuperare il valore dal client OAuth.
BASE_URL
Specifica l'URL OAuth.
Recuperare il valore dal server di autenticazione centralizzata.
Se il client OAuth è PingFederate, questo URL deve essere nel formato seguente:
https://<FQDN Pingfederate>:<Porta>/as
VALIDATE_URL
Specifica l'URL utilizzato per convalidare il token di accesso.
Recuperare il valore dal server di autenticazione centralizzata.
Esempio:/introspect.oauth2
RESOURCE_URL
Specifica l'URL del server OSLC.
Se non si specifica RESOURCE_URL, è necessario specificare i valori per OAUTH_URL, REFRESH_URL e TOKEN_URL.
Recuperare il valore dal server di autenticazione centralizzata.
OAUTH_URL
Specifica l'endpoint OAuth per le richieste di token.
Recuperare il valore dal server di autenticazione centralizzata.
Esempio:/authorization.oauth2
REFRESH_URL
Specifica l'URL da utilizzare per ottenere i token di accesso.
Recuperare il valore dal server di autenticazione centralizzata.
Esempio:/token.oauth2
TOKEN_URL
Fornisce il token di accesso.
Recuperare il valore dal server di autenticazione centralizzata.
Esempio:/token.oauth2
"oslc": {
"OSLC": {
"CLIENT_SECRET": "<client secret here>",
"OAUTH_URL": "<oauth url here>",
"VALIDATE_URL": "<validate url here>",
"VALIDATE_AUTH": "<stringified validate auth object here in format <auth>:<authObject>, authObject should be a stringified json object>",
"TOKEN_URL": "<token url here>",
"CLIENT_ID": "client id here>",
"RESOURCE_URL": "<resource url here>",
"VALIDATE_QUERY": "<stringified validate query object here in format <token>:<access_token>",
"BASE_URL": "<base url here>",
"VALIDATE_METHOD": "<validate method here>",
"REFRESH_URL": "<refresh url here>"
}
}
* 
È necessario specificare RESOURCE_URL o i parametri di autorizzazione (OAUTH_URL, REFRESH_URL e TOKEN_URL).
3. Eseguire il servizio LoadOAuthConfiguration da ThingWorx Composer per caricare il provider OAuth sul server ThingWorx Flow.
SAP OData
Attenersi alla procedura descritta di seguito ogni volta che si desidera aggiungere un provider OAuth per un server SAP OData.
Durante la configurazione di OAuth immettere l'URI di reindirizzamento come URL restituito di ThingWorx Flow, ad esempio https://<NomeHost:Porta>/Thingworx/Oauths/oauth/return.
2. Per aggiungere un provider OAuth per SAP OData, immettere i valori seguenti nel file JSON della configurazione OAuth:
Parametro
Descrizione
Valore
CLIENT_ID
Specifica l'identificatore client da utilizzare per la convalida dei token di accesso dal server di autorizzazione.
Recuperare il valore dal client OAuth SAP.
CLIENT_SECRET
Valore segreto del client.
Recuperare il valore dal client OAuth SAP.
BASE_URL
Specifica l'URL del server di autenticazione centralizzata.
https://<NomeHost:Porta>/sap/bc/sec/oauth2
SCOPE
Elenco di ambiti separati da spazi. Per ulteriori informazioni, vedere OAuth Scopes.
<AMBITO 1> <AMBITO 2>
RESOURCE_URL
Specifica l'URL della risorsa SAP.
Si consiglia di specificare RESOURCE_URL durante la configurazione di OAuth. In caso contrario l'utente deve specificare RESOURCE_URL durante l'aggiunta di un connettore OAuth.
https://<Host:Porta>/
"sap_odata": {
"SAP_OData": {
"CONNECTION_URL": "<SAP OData url in format https://<host>:<port>/>",
"CLIENT_SECRET": "<client secret here>",
"CLIENT_ID": "<client id here>",
"SCOPE": "<scopes separated by space>",
"BASE_URL": "<SAP OAuth url in format https://<host>:<port>/sap/bc/sec/oauth2>"
}
}
3. Eseguire il servizio LoadOAuthConfiguration da ThingWorx Composer per caricare il provider OAuth sul server ThingWorx Flow.
SOAP
Attenersi alla procedura descritta di seguito ogni volta che si desidera aggiungere un provider OAuth per un'istanza di SOAP.
1. Configurare OAuth nell'istanza di SOAP.
2. In base alla configurazione di OAuth, immettere i valori nel file JSON della configurazione OAuth. Fare riferimento al file config.json di esempio. Di seguito sono riportati i valori di esempio che è possibile immettere per il caricamento di OAuth.
Parametro
Descrizione
Valore
CLIENT_ID
Specifica l'identificatore client da utilizzare per la convalida dei token di accesso dal server di autorizzazione.
Recuperare il valore dall'applicazione OAuth.
CLIENT_SECRET
Valore segreto del client.
Recuperare il valore dall'applicazione OAuth.
VALIDATE_URL
Specifica l'URL utilizzato per convalidare il token di accesso.
Recuperare il valore dal client OAuth.
REFRESH_URL
Specifica l'URL da utilizzare per ottenere i token di accesso.
Recuperare il valore dal client OAuth.
TOKEN_URL
Fornisce il token di accesso.
Recuperare il valore dal client OAuth.
AUTH_URL
Specifica l'endpoint OAuth per le richieste di token.
Recuperare il valore dal client OAuth.
Fornire le informazioni sull'intestazione nella matrice "oauth2_validate_headers", come illustrato nella matrice di esempio:
{
"oauth2_validate_headers": [
"{\"Authorization\":\"Bearer {access_token}\"}",
"{\"Content-Type\":\"application/json\"}"
]
}
Fornire le informazioni sull'ambito nella matrice "oauth2_params_scope", come illustrato nella matrice di esempio:
{
"oauth2_params_scope": [
"{\"READ\":\"READ_PRIVILEGES\"}"
]
}
Fornire le informazioni sul parametro needurl nella matrice "oauth2_params_other", come illustrato nella matrice di esempio:
{
"oauth2_params_other": [
"{\"needurl\":\"true\"}"
]
}
3. Eseguire il servizio LoadOAuthConfiguration da ThingWorx Composer per caricare il provider OAuth sul server ThingWorx Flow.
Salesforce
Attenersi alla procedura descritta di seguito ogni volta che si desidera aggiungere un provider OAuth per un'app Salesforce.
1. Creare un'app Salesforce.
Durante la creazione dell'applicazione impostare i valori appropriati dei parametri seguenti:
Ambiti - Fornire ambiti appropriati all'app.
URL di callback - Immettere l'URL restituito di ThingWorx Flow, ad esempio https://<NomeHost:Porta>/Thingworx/Oauths/oauth/return.
2. Per aggiungere un provider OAuth per Salesforce, immettere i valori seguenti nel file JSON della configurazione OAuth:
Parametro
Descrizione
Valore
CLIENT_ID
Specifica l'identificatore client da utilizzare per la convalida dei token di accesso dal server di autorizzazione.
Recuperare il valore dall'app Salesforce.
CLIENT_SECRET
Valore segreto del client.
Recuperare il valore dall'app Salesforce.
"salesforce": {
"Salesforce": {
"CLIENT_SECRET": "<client secret here>",
"CLIENT_ID": "<client id here>"
}
}
3. Eseguire il servizio LoadOAuthConfiguration da ThingWorx Composer per caricare il provider OAuth sul server ThingWorx Flow.
Nel video seguente vengono illustrati i passi necessari per attivare la configurazione OAuth per Salesforce:
ServiceMax
Attenersi alla procedura descritta di seguito ogni volta che si desidera aggiungere un provider OAuth per un'app ServiceMax.
1. Dopo avere eseguito l'accesso a ServiceMax, creare un'app ServiceMax.
Durante la creazione dell'applicazione impostare i valori appropriati dei parametri seguenti:
Ambiti - Fornire ambiti appropriati all'app.
URL di callback - Immettere l'URL restituito di ThingWorx Flow, ad esempio https://<NomeHost:Porta>/Thingworx/Oauths/oauth/return.
2. Per aggiungere un provider OAuth per ServiceMax, immettere i valori seguenti nel file JSON della configurazione OAuth:
Parametro
Descrizione
Valore
CLIENT_ID
Specifica l'identificatore client da utilizzare per la convalida dei token di accesso dal server di autorizzazione.
Recuperare il valore dall'app ServiceMax.
CLIENT_SECRET
Valore segreto del client.
Recuperare il valore dall'app ServiceMax.
"servicemax": {
"Servicemax": {
"CLIENT_SECRET": "<client secret here>",
"CLIENT_ID": "<client id here>"
}
}
3. Eseguire il servizio LoadOAuthConfiguration da ThingWorx Composer per caricare il provider OAuth sul server ThingWorx Flow.
Slack
Attenersi alla procedura descritta di seguito ogni volta che si desidera aggiungere un provider OAuth per un'app Slack.
1. Creare l'app Slack.
Durante la creazione dell'applicazione impostare i valori appropriati dei parametri seguenti:
Ambiti - Fornire ambiti appropriati all'app.
URL di reindirizzamento - Immettere l'URL restituito di ThingWorx Flow, ad esempio https://<NomeHost:Porta>/Thingworx/Oauths/oauth/return.
2. Per aggiungere un provider OAuth per Slack, immettere i valori seguenti nel file JSON della configurazione OAuth:
Parametro
Descrizione
Valore
CLIENT_ID
Specifica l'identificatore client da utilizzare per la convalida dei token di accesso dal server di autorizzazione.
Recuperare il valore dall'app Slack.
CLIENT_SECRET
Valore segreto del client.
Recuperare il valore dall'app Slack.
"slack": {
"Slack": {
"CLIENT_SECRET": "<client secret here>",
"CLIENT_ID": "<client id here>"
}
}
3. Eseguire il servizio LoadOAuthConfiguration da ThingWorx Composer per caricare il provider OAuth sul server ThingWorx Flow.
Swagger
Attenersi alla procedura descritta di seguito ogni volta che si desidera aggiungere un provider OAuth per un'istanza di Swagger.
1. Configurare OAuth nell'istanza di Swagger.
2. In base alla configurazione di OAuth, immettere i valori nel file JSON della configurazione OAuth. Fare riferimento al file config.json di esempio. Di seguito sono riportati i valori di esempio che è possibile immettere per il caricamento di OAuth.
Parametro
Descrizione
Valore
CLIENT_ID
Specifica l'identificatore client da utilizzare per la convalida dei token di accesso dal server di autorizzazione.
Recuperare il valore dall'applicazione OAuth.
CLIENT_SECRET
Valore segreto del client.
Recuperare il valore dall'applicazione OAuth.
VALIDATE_URL
Specifica l'URL utilizzato per convalidare il token di accesso.
Recuperare il valore dal client OAuth.
REFRESH_URL
Specifica l'URL da utilizzare per ottenere i token di accesso.
Recuperare il valore dal client OAuth.
TOKEN_URL
Fornisce il token di accesso.
Recuperare il valore dal client OAuth.
AUTH_URL
Specifica l'endpoint OAuth per le richieste di token.
Recuperare il valore dal client OAuth.
Fornire le informazioni sull'intestazione nella matrice "oauth2_validate_headers", come illustrato nella matrice di esempio:
{
"oauth2_validate_headers": [
"{\"Authorization\":\"Bearer {access_token}\"}",
"{\"Content-Type\":\"application/json\"}"
]
}
Fornire le informazioni sull'ambito nella matrice "oauth2_params_scope", come illustrato nella matrice di esempio:
{
"oauth2_params_scope": [
"{\"READ\":\"READ_PRIVILEGES\"}"
]
}
Fornire le informazioni sull'URL nella matrice "oauth2_params_other", come illustrato nella matrice di esempio:
{
"oauth2_params_other": [
"{\"needurl\":\"true\"}"
]
}
3. Eseguire il servizio LoadOAuthConfiguration da ThingWorx Composer per caricare il provider OAuth sul server ThingWorx Flow.
ThingWorx
Attenersi alla procedura descritta di seguito ogni volta che si desidera aggiungere un provider OAuth per un server ThingWorx.
1. Configurare ThingWorx come provider di risorse per consentire a ThingWorx di rispondere alle richieste tramite il protocollo OAuth2.
2. Per aggiungere un provider OAuth per ThingWorx, immettere i valori seguenti nel file JSON della configurazione OAuth:
Parametro
Descrizione
Valore
CLIENT_ID
Specifica l'identificatore client da utilizzare per la convalida dei token di accesso dal server di autorizzazione.
Recuperare il valore dal client OAuth PingFederate.
CLIENT_SECRET
Valore segreto del client.
Recuperare il valore dal client OAuth PingFederate.
BASE_URL
Specifica l'URL OAuth PingFederate.
https://<FQDN Pingfederate>:<Porta>/as
RESOURCE_URL
Specifica l'URL di ThingWorx.
Si consiglia di specificare RESOURCE_URL durante la configurazione di OAuth. In caso contrario l'utente deve specificare RESOURCE_URL durante l'aggiunta di un connettore OAuth.
https://<FQDN Thingworx>:<Porta>/Thingworx
"thingworx": {
"Thingworx": {
"CLIENT_SECRET": "client secret here>",
"CLIENT_ID": "client id here>",
"RESOURCE_URL": "<Thingworx URL in format https://<Thingworx FQDN>:<port>/Thingworx>",
"BASE_URL": "<Pingfederate URL in format https://<Pingfederate FQDN>:<port>/as>"
}
}
3. Eseguire il servizio LoadOAuthConfiguration da ThingWorx Composer per caricare il provider OAuth sul server ThingWorx Flow.
Trello
Attenersi alla procedura descritta di seguito ogni volta che si desidera aggiungere un provider OAuth per un account Trello.
Nelle impostazioni, definire i valori appropriati per il parametro seguente:
URL di reindirizzamento - Immettere l'URL restituito di ThingWorx Flow in Allowed Origins, ad esempio https://<NomeHost:Porta>/Thingworx/Oauths/oauth/return.
2. Per aggiungere un provider OAuth per Trello, immettere i valori seguenti nel file JSON della configurazione OAuth:
Parametro
Descrizione
Valore
CONSUMER_KEY
Specifica la chiave utente da utilizzare per la convalida dei token di accesso dal server di autorizzazione.
Recuperare il valore dalle chiavi API per sviluppatori Trello.
CONSUMER_SECRET
Valore segreto utente.
Recuperare il valore dalle chiavi API per sviluppatori Trello.
"trello": {
"Trello": {
"CONSUMER_SECRET": "<client secret here>",
"CONSUMER_KEY": "<client id here>"
}
}
3. Eseguire il servizio LoadOAuthConfiguration da ThingWorx Composer per caricare il provider OAuth sul server ThingWorx Flow.
Windchill
Attenersi alla procedura descritta di seguito ogni volta che si desidera aggiungere un provider OAuth per un server Windchill.
2. Per aggiungere un provider OAuth per Windchill, immettere i valori seguenti nel file JSON della configurazione OAuth:
Parametro
Descrizione
Valore
CLIENT_ID
Specifica l'identificatore client da utilizzare per la convalida dei token di accesso dal server di autorizzazione.
Recuperare il valore dal client OAuth PingFederate.
CLIENT_SECRET
Valore segreto del client.
Recuperare il valore dal client OAuth PingFederate.
BASE_URL
Specifica l'URL OAuth PingFederate.
https://<FQDN Pingfederate>:<Porta>/as
SCOPE
Limita l'accesso dell'applicazione all'account di un utente inviando i token di accesso in base agli ambiti concessi. È possibile aggiungere più ambiti separandoli con una virgola (,).
WINDCHILL_READ, <scope1>, <scope2>
PF_IDP_ADAPTER_ID
Facoltativo. Specifica l'ID dell'adattatore IdP PingFederate della configurazione. Specificare solo se in PingFederate sono presenti più adattatori IdP.
PingFederateAdapterID
RESOURCE_URL
Facoltativo. Specifica l'URL di Windchill.
Si consiglia di specificare RESOURCE_URL durante la configurazione di OAuth. In caso contrario l'utente deve specificare RESOURCE_URL durante l'aggiunta di un connettore OAuth.
<protocollo>://<FQDN Windchill>:<Porta>/Windchill
"windchill": {
"Windchill": {
"CLIENT_SECRET": "<client secret here>",
"CLIENT_ID": "<client id here>",
"base_url": "<base url here>"
}
}
3. Eseguire il servizio LoadOAuthConfiguration da ThingWorx Composer per caricare il provider OAuth sul server ThingWorx Flow.
Windchill RV&S
Attenersi alla procedura descritta di seguito ogni volta che si desidera aggiungere un provider OAuth per un server Windchill RV&S.
2. Per aggiungere un provider OAuth per Windchill RV&S, immettere i valori seguenti nel file JSON della configurazione OAuth:
Parametro
Descrizione
Valore
CLIENT_ID
Specifica l'identificatore client da utilizzare per la convalida dei token di accesso dal server di autorizzazione.
Recuperare il valore dal client OAuth PingFederate.
CLIENT_SECRET
Valore segreto del client.
Recuperare il valore dal client OAuth PingFederate.
BASE_URL
Specifica l'URL OAuth PingFederate.
https://<FQDN Pingfederate>:<Porta>/as
"integrity": {
"integrity": {
"CLIENT_SECRET": "<client secret here>",
"CLIENT_ID": "<client id here>",
"base_url": "<base url here>"
}
}
3. Eseguire il servizio LoadOAuthConfiguration da ThingWorx Composer per caricare il provider OAuth sul server ThingWorx Flow.
Zendesk
Attenersi alla procedura descritta di seguito ogni volta che si desidera aggiungere un provider OAuth per un'app Zendesk.
1. Creare l'app Zendesk.
Durante la creazione dell'applicazione impostare i valori appropriati dei parametri seguenti:
Ambiti - Fornire ambiti appropriati all'app.
URL di reindirizzamento - Immettere l'URL restituito di ThingWorx Flow, ad esempio https://<NomeHost:Porta>/Thingworx/Oauths/oauth/return.
Nel video seguente vengono illustrati i passi necessari per attivare la configurazione OAuth per Zendesk:
2. Per aggiungere un provider OAuth per Zendesk, immettere i valori seguenti nel file JSON della configurazione OAuth:
Parametro
Descrizione
Valore
CLIENT_ID
Specifica l'identificatore client da utilizzare per la convalida dei token di accesso dal server di autorizzazione.
Recuperare il valore dall'app Zendesk.
CLIENT_SECRET
Valore segreto del client.
Recuperare il valore dall'app Zendesk.
"zendesk": {
"Zendesk": {
"CLIENT_SECRET": "<client secret here>",
"CLIENT_ID": "<client id here>"
}
}
3. Eseguire il servizio LoadOAuthConfiguration da ThingWorx Composer per caricare il provider OAuth sul server ThingWorx Flow.
Risoluzione dei problemi
Scenario
Soluzione
Non è possibile aggiungere un provider OAuth se un connettore OAuth utilizza un provider OAuth esistente con lo stesso nome.
* 
Tutti gli altri provider OAuth validi presenti nello stesso file JSON non vengono caricati.
Aggiungere un nome di provider OAuth univoco e quindi caricare la configurazione OAuth.
Ad esempio, se nella configurazione OAuth esiste Gmail-1, aggiungere Gmail-2 al file JSON della configurazione OAuth, come mostrato nel codice di esempio seguente:
{
"google_gmail": {
"Gmail-1": {
"CLIENT_ID": "<client id for Gmail - 1 account here>",
"CLIENT_SECRET": "<client secret for Gmail - 1 account here>"
},
"Gmail-2": {
"CLIENT_ID": "<client id for Gmail - 2 account here>",
"CLIENT_SECRET": "<client secret for Gmail - 2 account here>"
}
}
}
OPPURE
Eliminare tutti i connettori che utilizzano il provider OAuth esistente, caricare nuovamente il provider OAuth, quindi riavviare il servizio OAuth.
Per riavviare il servizio OAuth, attenersi alla procedura descritta di seguito.
a. Nel sistema in cui è installato ThingWorx Flow, avviare il prompt dei comandi come amministratore.
b. Eseguire il comando pm2 ls per ottenere il numero del servizio OAuth.
c. Eseguire il comando pm2 restart <numero_servizio_OAuth> per riavviare il server OAuth.
OPPURE
Nel sistema in cui è installato ThingWorx Flow avviare il prompt dei comandi come amministratore ed eseguire il comando pm2 restart flow-oauth-server per riavviare il server OAuth.
È stato utile?