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à.
Comprendere il token di accesso
Il token di accesso al bacino d'utenza contiene attestazioni relative all'utente autenticato, un elenco dei gruppi dell'utente e un elenco di ambiti. Lo scopo del token di accesso è API autorizzare le operazioni. Il pool di utenti accetta i token di accesso per autorizzare le operazioni self-service degli utenti. Ad esempio, puoi utilizzare il token di accesso per consentire agli utenti di accedere per aggiornare, modificare o eliminare gli attributi utente.
Con gli ambiti OAuth 2.0
Il token di accesso dell'utente è l'autorizzazione a richiedere ulteriori informazioni sugli attributi dell'utente all'userInfo endpoint. Inoltre, è anche l'autorizzazione a leggere e scrivere gli attributi dell'utente. Il livello di accesso agli attributi autorizzato dal token di accesso dipende dalle autorizzazioni assegnate al client dell'app e dagli ambiti forniti nel token.
Il token di accesso è un JSONWebkid
) non corrisponde al valore dell'attestazione kid
di un token ID nella stessa sessione utente. Verifica nel codice dell'app i token ID e di accesso in modo indipendente. Non considerare attendibili le attestazioni contenute in un token di accesso finché non verifichi la firma. Per ulteriori informazioni, consulta Verifica di un token Web JSON. È possibile configurare il periodo di scadenza del token di accesso su qualsiasi valore compreso tra 5 minuti e 1 giorno. Puoi configurare questo valore per il client dell'app.
Importante
Per i token ID e di accesso non specificare un valore minimo inferiore a un'ora se utilizzi l'interfaccia utente ospitata. Amazon Cognito HostedUI utilizza cookie validi per un'ora. Inserendo un minimo di meno di un'ora, non si otterrà un tempo di scadenza inferiore.
Intestazione del token di accesso
L'intestazione contiene due informazioni: l'ID della chiave (kid
) e l'algoritmo (alg
).
{ "kid" : "1234example=" "alg" : "RS256", }
kid
-
L'ID della chiave . Il suo valore indica la chiave utilizzata per proteggere la firma JSON Web (JWS) del token. È possibile visualizzare la chiave IDs di firma del pool di utenti sull'
jwks_uri
endpoint.Per ulteriori informazioni sul
kid
parametro, consulta la sezione parametro di intestazione dell'ID della chiave (kid). alg
-
L'algoritmo di crittografia utilizzato da Amazon Cognito per proteggere il token di accesso. I pool di utenti utilizzano un algoritmo RS256 crittografico, che è una RSA firma con SHA -256.
Per ulteriori informazioni sul
alg
parametro, consultare la sezione relativa al parametro di intestazione dell'algoritmo (alg).
Payload predefinito del token di accesso
Questo è un esempio di payload di un token di accesso. Per ulteriori informazioni, consulta la sezione JWTreclami
<header>
. { "sub":"aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", "device_key": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", "cognito:groups":[ "testgroup" ], "iss":"https://cognito-idp.us-west-2.amazonaws.com/us-west-2_example", "version":2, "client_id":"xxxxxxxxxxxxexample", "origin_jti":"aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", "event_id":"aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", "token_use":"access", "scope":"phone openid profile resourceserver.1/appclient2 email", "auth_time":1676313851, "exp":1676317451, "iat":1676313851, "jti":"aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", "username":"my-test-user" } .<token signature>
sub
-
Un identificatore univoco (UUID), o oggetto, per l'utente autenticato. Il nome utente potrebbe non essere univoco nel pool di utenti. l'attestazione
sub
è il modo migliore per identificare un determinato utente. cognito:groups
-
Una serie di nomi di gruppi del pool di utenti che includono l'utente come membro.
iss
-
Il provider di identità che ha emesso il token. L'attestazione ha il seguente formato.
https://cognito-idp.
<Region>
.amazonaws.com/<your user pool ID>
client_id
-
Il client dell'app del pool di utenti che ha autenticato l'utente. Amazon Cognito restituisce lo stesso valore nell'attestazione
aud
del token ID. origin_jti
-
Un identificatore di revoca del token associato al token di aggiornamento dell'utente. Amazon Cognito fa riferimento all'
origin_jti
affermazione quando verifica se hai revocato il token dell'utente con l'operazione Endpoint Revoke o l'operazione. RevokeTokenAPI Quando revochi un token, Amazon Cognito invalida tutti i token di accesso e ID con lo stesso valoreorigin_jti
. token_use
-
Lo scopo previsto del token. In un token di accesso, il valore è
access
. scope
-
Un elenco di ambiti OAuth 2.0 che definiscono l'accesso fornito dal token. Un token dell'Endpoint Token può contenere tutti gli ambiti supportati dal client dell'app. Un token di API accesso ad Amazon Cognito contiene solo l'ambito.
aws.cognito.signin.user.admin
auth_time
-
L'ora di fine dell'autenticazione dell'utente, in formato Unix.
exp
-
L'ora di scadenza del token dell'utente, in formato Unix.
iat
-
L'ora di emissione del token dell'utente da parte di Amazon Cognito, in formato Unix.
jti
-
L'identificatore univoco di. JWT
username
-
Il nome utente nel pool di utenti.
Firma del token di accesso
La firma del token di accesso viene calcolata in base all'intestazione e al payload del token. JWT Se utilizzata al di fuori di un'applicazione sul WebAPIs, è sempre necessario verificare questa firma prima di accettare il token. Per ulteriori informazioni, consulta Verifica di un token Web JSON.