L'endpoint degli attributi utente - 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à.

L'endpoint degli attributi utente

Laddove OIDC emette token ID che contengono attributi utente, OAuth 2.0 implementa l'endpoint. /oauth2/userInfo Un utente o client autenticato riceve un token di accesso con un claim. scopes Questa affermazione determina gli attributi che il server di autorizzazione deve restituire. Quando un'applicazione presenta un token di accesso all'userInfoendpoint, il server di autorizzazione restituisce un corpo di risposta che contiene gli attributi utente che rientrano nei limiti stabiliti dagli ambiti del token di accesso. L'applicazione può recuperare informazioni su un utente dall'userInfoendpoint purché disponga di un token di accesso valido con almeno un requisito di ambito. openid

L'userInfoendpoint è un endpoint OpenID OIDC Connect userInfo(). Risponde con gli attributi utente quando i fornitori di servizi presentano i token di accesso emessi dall'endpoint del token. Gli ambiti del token di accesso dell'utente definiscono gli attributi utente che l' userInfo endpoint restituisce nella sua risposta. L'ambito openid deve essere una delle richieste del token di accesso.

Amazon Cognito emette token di accesso in risposta a richieste di pool di utenti come API InitiateAuth. Poiché non contengono alcun cannocchiale, il userInfo endpoint non accetta questi token di accesso. È invece necessario presentare i token di accesso dall'endpoint del token.

Il tuo provider di identità (IdP) OAuth 2.0 di terze parti ospita anche un userInfo endpoint. Quando l'utente si autentica con quell'IdP, Amazon Cognito scambia silenziosamente un codice di autorizzazione con l'endpoint IdP. token Il tuo pool di utenti passa il token di accesso IdP per autorizzare il recupero delle informazioni utente dall'endpoint IdP. userInfo

GET /oauth2/userInfo

L'app effettua le richieste direttamente a questo endpoint e non tramite il browser.

Per ulteriori informazioni, consulta UserInfo Endpoint nella specifica OpenID OIDC Connect ().

Parametri della richiesta nell'intestazione

Authorization: Bearer <access_token>

Passa il token di accesso nel campo dell'intestazione dell'autorizzazione.

Obbligatorio.

Esempio: richiesta

GET /oauth2/userInfo HTTP/1.1 Content-Type: application/x-amz-json-1.1 Authorization: Bearer eyJra12345EXAMPLE User-Agent: [User agent] Accept: */* Host: auth.example.com Accept-Encoding: gzip, deflate, br Connection: keep-alive

Esempio: risposta positiva

HTTP/1.1 200 OK Content-Type: application/json;charset=UTF-8 Content-Length: [Integer] Date: [Timestamp] x-amz-cognito-request-id: [UUID] X-Content-Type-Options: nosniff X-XSS-Protection: 1; mode=block Cache-Control: no-cache, no-store, max-age=0, must-revalidate Pragma: no-cache Expires: 0 Strict-Transport-Security: max-age=31536000 ; includeSubDomains X-Frame-Options: DENY Server: Server Connection: keep-alive { "sub": "[UUID]", "email_verified": "true", "custom:mycustom1": "CustomValue", "phone_number_verified": "true", "phone_number": "+12065551212", "email": "bob@example.com", "username": "bob" }

Per un elenco di OIDC reclami, vedi Reclami standard. Attualmente, Amazon Cognito restituisce i valori per email_verified e phone_number_verified come stringhe.

Esempi di risposte negative

Esempio: richiesta errata

HTTP/1.1 400 Bad Request WWW-Authenticate: error="invalid_request", error_description="Bad OAuth2 request at UserInfo Endpoint"
invalid_request

Nella richiesta manca un parametro obbligatorio, include un valore di parametro non supportato oppure è in altro modo errata.

Esempio: token errato

HTTP/1.1 401 Unauthorized WWW-Authenticate: error="invalid_token", error_description="Access token is expired, disabled, or deleted, or the user has globally signed out."
invalid_token

Il token di accesso è scaduto, revocato, non valido o non è valido.