Aggiornare i token in Microsoft Identity Platform
Un token di aggiornamento viene usato per ottenere nuove coppie di token di accesso e aggiornamento alla scadenza del token di accesso corrente. Quando un client acquisisce un token di accesso per accedere a una risorsa protetta, riceve anche un token di aggiornamento.
I token di aggiornamento vengono usati anche per acquisire token di accesso aggiuntivi per altre risorse. I token di aggiornamento sono associati a una combinazione di utenti e client, ma non sono associati a una risorsa o a un tenant. Un client può usare un token di aggiornamento per acquisire i token di accesso in qualsiasi combinazione di risorsa e tenant in cui dispone delle autorizzazioni necessarie. I token di aggiornamento vengono crittografati e solo Microsoft Identity Platform può leggerli.
Durata dei token
I token di aggiornamento hanno una durata maggiore rispetto ai token di accesso. La durata predefinita per i token di aggiornamento è di 24 ore per le app a pagina singola e 90 giorni per tutti gli altri scenari. I token di aggiornamento si sostituiscono con un nuovo token a ogni uso. Microsoft Identity Platform non revoca i token di aggiornamento precedenti quando vengono usati per recuperare nuovi token di accesso. Eliminare in modo sicuro il token di aggiornamento precedente dopo aver acquisito un nuovo token. I token di aggiornamento devono essere archiviati in modo sicuro, ad esempio token di accesso o credenziali dell'applicazione.
Nota
I token di aggiornamento inviati a un URI di reindirizzamento registrato come spa
scadono dopo 24 ore. I token di aggiornamento aggiuntivi acquisiti usando il token di aggiornamento iniziale riportano tale scadenza, quindi le app devono essere preparate a eseguire nuovamente il flusso del codice di autorizzazione usando un'autenticazione interattiva per ottenere un nuovo token di aggiornamento ogni 24 ore. Gli utenti non devono immettere le credenziali e in genere non vedono nemmeno alcuna esperienza utente correlata, ma solo un ricaricamento dell'applicazione. Il browser deve visitare la pagina di accesso in un frame di primo livello per visualizzare la sessione di accesso. Questo problema è dovuto alle funzionalità di privacy nei browser che bloccano i cookie di terze parti.
Scadenza del token
I token di aggiornamento possono essere revocati in qualsiasi momento, a causa di timeout e revoche. L'app deve gestire le revoche dal servizio di accesso normalmente inviando l'utente a un prompt di accesso interattivo per eseguire di nuovo l'accesso.
Timeout dei token
Non è possibile configurare la durata di un token di aggiornamento. Non è possibile ridurre o aumentare la durata. Pertanto, è importante assicurarsi di proteggere i token di aggiornamento, in quanto possono essere estratti da posizioni pubbliche da attori malintenzionati o effettivamente dal dispositivo stesso se il dispositivo è compromesso. Sono disponibili alcune operazioni eseguibili:
- Configurare la frequenza di accesso nell'accesso condizionale per definire i periodi di tempo prima che un utente sia necessario per eseguire di nuovo l'accesso. Per ulteriori informazioni vedere Configurazione della gestione della sessione di autenticazione con l'Accesso condizionale.
- Usare i servizi di gestione delle app di Microsoft Intune, ad esempio la gestione di applicazioni mobili (MAM) e la gestione di dispositivi mobili (MDM) per proteggere i dati dell'organizzazione
- Implementare i Criteri di protezione dei token di accesso condizionale
Non tutti i token di aggiornamento seguono le regole impostate nei criteri di durata del token. In particolare, i token di aggiornamento usati nelle app a pagina singola sono sempre fissi a 24 ore di attività, come se fossero applicati criteri MaxAgeSessionSingleFactor
di 24 ore.
Revoca dei token
Il server può revocare i token di aggiornamento a causa di una modifica delle credenziali, dell'azione dell'utente o dell'amministratore. I token di aggiornamento rientrano in due classi, ovvero i token emessi per i client riservati (la colonna più a destra) e quelli emessi per i client pubblici (tutte le altre colonne).
Modifica | Cookie basato su password | Token basato su password | Cookie non basato su password | Token non basato su password | Token client riservato |
---|---|---|---|---|---|
Scadenza password | Rimarrà attivo | Rimarrà attivo | Rimarrà attivo | Rimarrà attivo | Rimarrà attivo |
Password cambiata dall'utente | Revocato | Revocato | Rimarrà attivo | Rimarrà attivo | Rimarrà attivo |
Utente esegue SSPR | Revocato | Revocato | Rimarrà attivo | Rimarrà attivo | Rimarrà attivo |
Amministratore reimposta password | Revocato | Revocato | Rimarrà attivo | Rimarrà attivo | Rimarrà attivo |
L'utente revoca i token di aggiornamento | Revocato | Revocato | Revocato | Revocato | Revocato |
L'amministratore revoca tutti i token di aggiornamento per un utente | Revocato | Revocato | Revocato | Revocato | Revocato |
Single Sign-Out | Revocato | Rimarrà attivo | Revocato | Rimarrà attivo | Rimarrà attivo |
Nota
I token di aggiornamento non vengono revocati per gli utenti B2B nel tenant delle risorse. Il token deve essere revocato nel tenant principale.