Configurare e utilizzare le applicazioni OAuth 2 personalizzate della tua organizzazione utilizzando il flusso JWT
Per eseguire l’integrazione con Workfront e consentire all’app client di comunicare con Workfront per conto dell’utente, è necessario:
- Creare un’applicazione OAuth2
- Creare un certificato a chiave pubblica
- Creare un token web JSON (JWT)
Creare un'applicazione OAuth2
Per istruzioni sulla creazione dell'applicazione OAuth2, vedere Creare un'applicazione OAuth2 utilizzando l'autenticazione del server (flusso JWT) in Creare applicazioni OAuth2 per le integrazioni Workfront
Creare un certificato a chiave pubblica
Per poter essere incluso nella richiesta di accesso, il JWT deve essere firmato e codificato in base 64. Le librerie JWT forniscono le funzioni necessarie per eseguire queste attività.
Il token deve essere firmato utilizzando la chiave privata per un certificato di firma digitale. In tal caso, puoi utilizzare la chiave privata di qualsiasi certificato associato per firmare il tuo JWT.
L'algoritmo utilizzato è RS256 (firma RSA con SHA-256). Si tratta di un algoritmo asimmetrico che utilizza una coppia di chiavi pubblica/privata. Il provider di identità ha una chiave privata (segreta) utilizzata per generare la firma e il consumatore del JWT ottiene una chiave pubblica per convalidarla.
Per generare la chiave pubblica, eseguire one delle operazioni seguenti.
-
Apri il terminale MacOS/Linux ed esegui il comando seguente, quindi carica
certificate_pub.crt
utilizzando il pulsante Aggiungi chiave pubblica nella configurazione dell'applicazione OAuth2 in Workfront.code language-none openssl req -x509 -sha256 -nodes -newkey rsa:2048 -keyout private.key -out certificate_pub.crt
-
Utilizza il pulsante Genera una coppia di chiavi pubblica/privata nella configurazione dell'applicazione OAuth2 in Workfront per generare l'RSA.
Creare un token web JSON
Un token web JSON per l’autenticazione dell’account di servizio richiede un set particolare di attestazioni e deve essere firmato utilizzando un certificato di firma digitale valido. È consigliabile utilizzare una delle librerie o degli strumenti disponibili al pubblico per creare il codice JWT.
La tabella seguente contiene informazioni sui campi che potrebbero essere necessari durante la configurazione del token JWT.
Scambia il JWT per recuperare un token di accesso
-
Invia una richiesta POST a:
code language-none https://yourdomain.my.workfront.com/integrations/oauth2/api/v1/jwt/exchange
-
Il corpo della richiesta deve contenere parametri codificati in URL con ID client, Segreto client e JWT:
code language-none client_id={client_id_value}&client_secret={client_secret_value}&jwt_token={base64_encoded_JWT}