Fine delle sessioni utente con revoca del token - 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à.

Fine delle sessioni utente con revoca del token

È possibile revocare un token di aggiornamento per un utente utilizzando i pool di utenti API o il server di autorizzazione. Endpoint Revoke Quando si revoca un token di aggiornamento, tutti i token di accesso precedentemente emessi da tale token di aggiornamento diventano non validi. Gli altri token di aggiornamento rilasciati all'utente non sono interessati da questa operazione.

Nota

JWTi token sono autonomi con una firma e un orario di scadenza assegnati al momento della creazione del token. I token revocati non possono essere utilizzati con nessuna chiamata Amazon API Cognito che richiede un token. Tuttavia, i token revocati continueranno a essere validi se vengono verificati utilizzando una JWT libreria che verifica la firma e la scadenza del token.

È possibile revocare un token di aggiornamento per il client di un bacino d'utenza se la revoca di token è abilitata. Quando crei un nuovo client del bacino d'utenza, la revoca dei token è attivata di default.

Abilitazione della revoca dei token

Prima di poter revocare un token per un client del bacino d'utenza esistente, è necessario abilitare la revoca del token. È possibile abilitare la revoca dei token per i client del pool di utenti esistenti utilizzando o il. AWS CLI AWS API A tale scopo, chiamate il aws cognito-idp describe-user-pool-client CLI comando o l'DescribeUserPoolClientAPIoperazione per recuperare le impostazioni correnti dal client dell'app. Quindi richiama il aws cognito-idp update-user-pool-client CLI comando o l'UpdateUserPoolClientAPIoperazione. Includi le impostazioni correnti dal client app e imposta il parametro EnableTokenRevocation su true.

Quando si crea un nuovo client con pool di utenti utilizzando il AWS Management Console, la, o il AWS CLI, token AWS API, la revoca è abilitata per impostazione predefinita.

Dopo aver abilitato la revoca dei token, vengono aggiunte nuove attestazioni nei token Web di Amazon JSON Cognito. Le attestazioni origin_jti e jti vengono aggiunte ai token di accesso e ID. Queste attestazioni aumentano le dimensioni dei token ID e di accesso del client dell'app.

Per creare o modificare un client di app con la revoca dei token abilitata, includi il seguente parametro nella tua richiesta o. CreateUserPoolClientUpdateUserPoolClientAPI

"EnableTokenRevocation": true

Revoca di un token

È possibile revocare un token di aggiornamento utilizzando una RevokeTokenAPIrichiesta, ad esempio con il comando. aws cognito-idp revoke-token CLI Puoi anche revocare i token usando il Endpoint Revoke. Questo endpoint diventa disponibile dopo l'aggiunta di un dominio al bacino d'utenza. Puoi utilizzare l'endpoint di revoca su un dominio ospitato Amazon Cognito o sul tuo dominio personalizzato.

Nota

La richiesta per revocare un token di aggiornamento deve includere l'ID client utilizzato per ottenerlo.

Di seguito è riportato il corpo di una richiesta di esempio. RevokeToken API

{ "ClientId": "1example23456789", "ClientSecret": "abcdef123456789ghijklexample", "Token": "eyJjdHkiOiJKV1QiEXAMPLE" }

Di seguito è riportato un esempio di URL richiesta c all'/oauth2/revokeendpoint di un pool di utenti con un dominio personalizzato.

curl --location 'auth.mydomain.com/oauth2/revoke' \ --header 'Content-Type: application/x-www-form-urlencoded' \ --header 'Authorization: Basic Base64Encode(client_id:client_secret)' \ --data-urlencode 'token=abcdef123456789ghijklexample' \ --data-urlencode 'client_id=1example23456789'

L'operazione RevokeToken e l'endpoint /oauth2/revoke non richiedono alcuna autorizzazione aggiuntiva a meno che il client dell'app non disponga di un segreto del client.