Utilizzo di un token di aggiornamento
Il flusso con token di aggiornamento è un modo più sicuro per autorizzare le richieste API. Anziché utilizzare direttamente un'unica credenziale di lunga durata, si scambia un token di aggiornamento con un token di accesso di breve durata. Quando il token di accesso scade, si ripete lo scambio.
Nota: il token di aggiornamento non può essere utilizzato da solo per autorizzare le richieste API; deve sempre essere scambiato prima con un token di aggiornamento.
Per utilizzare questo flusso, seleziona l'opzione refresh token quando crei un token in Admin → Developer. Al momento della creazione riceverai tre valori:
-
Client ID – identifica la tua integrazione
-
Client secret – autentica la richiesta di scambio
-
Refresh token – serve per ottenere i token di accesso
Scambio di un token di aggiornamento con un token di accesso
Invia una richiesta POST all'endpoint dei token di Altium Identity.
Token Endpoint
Realm |
URL |
Altium 365 |
|
Altium 365 Gov Cloud |
|
Request Body (application/x-www-form-urlencoded)
grant_type=refresh_token
refresh_token={refresh-token}
client_id={client-id}
client_secret={client-secret}
Response
{
"access_token": "...",
"expires_in": 14400,
"token_type": "Bearer",
"refresh_token": "...",
"scope": "..."
}
Utilizza il access_token presente nella risposta per autorizzare le richieste API. expires_in è espresso in secondi e indica per quanto tempo il token di accesso è valido.
curl Example:
curl -X POST https://auth.altium.com/connect/token \
-H "Content-Type: application/x-www-form-urlencoded" \
--data-urlencode "grant_type=refresh_token" \
--data-urlencode "refresh_token={refresh-token}" \
--data-urlencode "client_id={client-id}" \
--data-urlencode "client_secret={client-secret}"
Integrazione nella tua applicazione
Uno schema tipico per le integrazioni a lunga esecuzione:
-
Conserva il token di aggiornamento, l'ID client e il segreto client in modo sicuro (ad esempio, tramite variabili d'ambiente o un gestore di segreti).
-
All'avvio, chiama l'endpoint dei token per ottenere un nuovo token di accesso.
-
Utilizza il token di accesso per le richieste API. Conservalo nella cache fino alla scadenza.
-
Alla scadenza (stato HTTP
401 Unauthorized, oppure200 OKcon codice di erroreAuthExpiredTokennella risposta GraphQL), scambia nuovamente il token di aggiornamento per ottenere un nuovo token di accesso.
I token di aggiornamento scadono al termine del periodo di validità configurato al momento della creazione (fino a 1 anno). Una volta scaduto un token di aggiornamento, dovrai crearne uno nuovo in Admin → Developer.
Vedi anche