Utilizzo del token di aggiornamento - Amazon Cognito

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Utilizzo del token di aggiornamento

Puoi utilizzare il token di aggiornamento per recuperare nuovi ID e token di accesso. Di default, il token di aggiornamento scade 30 giorni dopo l'accesso dell'utente dell'app al bacino d'utenza. Quando crei un'applicazione per il bacino d'utenza, puoi impostare la scadenza del token di aggiornamento dell'applicazione su qualsiasi valore compreso tra 60 minuti e 10 anni.

Mobile SDK for iOS, Mobile SDK for Android, Amplify for iOS, Android e Flutter aggiornano automaticamente gli ID e i token di accesso se è presente un token di aggiornamento valido (non scaduto). Gli ID e i token di accesso hanno una validità residua minima di 2 minuti. Se il token di aggiornamento è scaduto, l'utente dell'applicazione dovrà eseguire nuovamente l'autenticazione per accedere di nuovo al bacino d'utenza. Se il valore minimo per il token di accesso e il token ID è impostato su 5 minuti e si utilizza l'SDK, il token di aggiornamento verrà utilizzato costantemente per ripristinare i nuovi token ID e token di accesso. Sarà possibile visualizzare il comportamento previsto impostando un valore minimo di 7 minuti anziché di 5.

L'account dell'utente di per sé non scade, a condizione che l'utente abbia effettuato l'accesso almeno una volta prima del limite di tempo di UnusedAccountValidityDays per nuovi account.

Ottenere nuovi token di accesso e identità con un token di aggiornamento

Utilizza l'API o l'interfaccia utente ospitata per avviare l'autenticazione dei token di aggiornamento.

Per utilizzare il token di aggiornamento per ottenere un nuovo ID e accedere ai token con l'API dei pool di utenti, utilizza le AdminInitiateAuthoperazioni o API. InitiateAuth Invia REFRESH_TOKEN_AUTH per il parametro AuthFlow. Nella proprietà AuthParameters di AuthFlow, passa il token di aggiornamento dell'utente come valore di "REFRESH_TOKEN". Amazon Cognito restituisce ID e token di accesso nuovi dopo che la richiesta API ha superato tutte le sfide.

Nota

Per utilizzare l'API dei pool di utenti di Amazon Cognito per aggiornare i token per un utente dell'interfaccia utente ospitata, genera una richiesta InitiateAuth.

Puoi anche inviare token di aggiornamento a Endpoint Token in un pool di utenti in cui hai configurato un dominio. Nel corpo della richiesta, includi un valore grant_type di refresh_token e un valore refresh_token del token di aggiornamento dell'utente.

Revoca dei token di aggiornamento

È possibile revocare i token di aggiornamento che appartengono a un utente. Per ulteriori informazioni sulla revoca dei token, consulta Revoca dei token.

Nota

La revoca del token di aggiornamento comporta la revoca di tutti i token ID e di accesso emessi da Amazon Cognito a seguito delle richieste di aggiornamento con tale token.

Quando revochi tutti i token dell'utente tramite le operazioni API GlobalSignOut e AdminUserGlobalSignOut, gli utenti possono disconnettersi da tutti i dispositivi a cui sono attualmente collegati. Dopo che l'utente viene disconnesso, si verifica quanto segue.

  • Il token di aggiornamento dell'utente non può ottenere nuovi token per l'utente.

  • Il token di accesso dell'utente non può effettuare richieste API autorizzate dal token.

  • L'utente deve effettuare nuovamente l'autenticazione per ottenere nuovi token. Poiché i cookie della sessione dell'interfaccia utente ospitata non scadono automaticamente, l'utente può eseguire nuovamente l'autenticazione con un cookie di sessione, senza richiedere credenziali aggiuntive. Dopo che gli utenti dell'interfaccia utente ospitata sono stati disconnessi, reindirizzali al Endpoint Logout, in cui Amazon Cognito cancellerà il relativo cookie di sessione.

Con i token di aggiornamento, puoi mantenere le sessioni degli utenti nella tua app a lungo. Nel tempo, i tuoi utenti potrebbero richiedere di rimuovere l'autorizzazione da alcuni dispositivi a cui hanno effettuato l'accesso, aggiornando continuamente la loro sessione. Per disconnettere l'utente da un singolo dispositivo, revoca il relativo token di aggiornamento. Quando l'utente desidera disconnettersi da tutte le sessioni autenticate, genera una richiesta API. GlobalSignOut La tua app può presentare all'utente una scelta come Esci da tutti i dispositiviGlobalSignOut accetta un token di accesso valido, inalterato, non scaduto e non revocato, di un utente. Poiché questa API è autorizzata dal token, un utente non può utilizzarla per avviare la disconnessione di un altro utente.

Tuttavia, puoi generare una richiesta AdminUserGlobalSignOutAPI che autorizzi con le tue AWS credenziali per disconnettere qualsiasi utente da tutti i suoi dispositivi. L'applicazione di amministrazione deve richiamare questa operazione API con le credenziali AWS dello sviluppatore e passare l'ID del pool di utenti e il nome utente dell'utente come parametri. L'API AdminUserGlobalSignOut è in grado di disconnettere qualsiasi utente nel bacino d'utenza.

Per ulteriori informazioni sulle richieste che è possibile autorizzare con AWS credenziali o con il token di accesso di un utente, vedere. Operazioni API autenticate e non autenticate per pool di utenti di Amazon Cognito