Riferimento all'API Google OpenID Connect

Questa pagina descrive l'implementazione di Google come provider OpenID Connect e fornisce il riferimento tecnico per gli endpoint OIDC di Google. La specifica OpenID Connect (OIDC) Core 1.0 definisce il protocollo per autenticare gli utenti e ottenere informazioni sull'identità.

Questo riferimento non ha lo scopo di fornire istruzioni passo passo su come implementare OIDC. Per i dettagli di implementazione, consulta la guida OpenID Connect.

Documento di rilevamento

Il documento di rilevamento contiene i metadati sulla configurazione OpenID Connect di Google come definito nella specifica OpenID Connect Discovery 1.0.

URL: https://accounts.google.com/.well-known/openid-configuration

Metodo di richiesta supportato: GET

Corpo della risposta

I campi della risposta vengono restituiti in un oggetto JSON nel corpo della risposta HTTP alla richiesta GET del richiedente a https://accounts.google.com/.well-known/openid-configuration.

Campo Tipo Descrizione
issuer string L'identificatore dell'emittente. URL sensibile alle maiuscole utilizzando lo schema https. Il valore moderno è https://accounts.google.com; tuttavia, accounts.google.com viene restituito anche per le implementazioni legacy.
authorization_endpoint string L'URL dell'endpoint di autorizzazione.
device_authorization_endpoint string L'URL dell'endpoint di autorizzazione del dispositivo.
token_endpoint string L'URL dell'endpoint token.
userinfo_endpoint string L'URL dell'endpoint UserInfo.
revocation_endpoint string L'URL dell'endpoint di revoca.
jwks_uri string L'URL del documento JSON Web Key Set (JWKS).
response_types_supported array Un elenco dei valori response_type supportati.
response_modes_supported array Un elenco dei valori response_mode supportati.
authorization_response_iss_parameter_supported boolean Valore booleano che indica il supporto per RFC 9207.
subject_types_supported array Un elenco dei tipi di identificatori del soggetto supportati.
id_token_signing_alg_values_supported array Un elenco degli algoritmi supportati per la firma del token ID.
scopes_supported array Un elenco di valori di ambito supportati.
claims_supported array Un elenco delle rivendicazioni supportate.
token_endpoint_auth_methods_supported array Un elenco dei metodi di autenticazione supportati per l'endpoint token.
code_challenge_methods_supported array Un elenco di metodi di verifica del codice supportati per PKCE.
grant_types_supported array Un elenco dei tipi di autorizzazione OAuth 2.0 supportati.

Token ID (rivendicazioni)

Il valore id_token restituito nelle risposte è un token web JSON (JWT) firmato che deve essere verificato utilizzando il materiale di gestione delle chiavi ottenuto da jwks_uri presente nel documento di scoperta. La tabella seguente descrive i contenuti del payload del token ID decodificato.

Richiedi Tipo Descrizione
iss string Obbligatorio. L'identificatore dell'emittente della risposta. In genere https://accounts.google.com; tuttavia, per le implementazioni precedenti viene restituito anche accounts.google.com.
sub string Obbligatorio. Un identificatore per l'utente, univoco tra tutti gli Account Google e mai riutilizzato. Un Account Google può avere più indirizzi email in momenti diversi, ma il valore di sub non viene mai modificato. Utilizza sub all'interno dell'applicazione come chiave identificatore univoco per l'utente. Lunghezza massima di 255 caratteri ASCII sensibili alle maiuscole.
azp string L'identificatore client del presentatore autorizzato, ottenuto dalla console Google Cloud. Questa rivendicazione è necessaria solo quando la parte che richiede il token ID non corrisponde al pubblico del token ID.
aud string Obbligatorio. Il pubblico a cui è destinato il token ID. Si tratta dell'identificatore client della tua applicazione, ottenuto dalla console Google Cloud.
iat integer Obbligatorio. L'ora in cui è stato emesso il token ID. Rappresentato in secondi del tempo Unix epoch (numero intero).
exp integer Obbligatorio. Ora di scadenza a partire dalla quale il token ID non deve essere accettato. Rappresentato in secondi del tempo Unix epoch (numero intero).
nonce string Il valore di nonce fornito dalla tua app nella richiesta di autenticazione. Devi proteggerti dagli attacchi di replay presentando questo valore una sola volta.
auth_time integer L'ora in cui è avvenuta l'autenticazione dell'utente, un numero JSON che rappresenta il numero di secondi trascorsi dall'epoca di Unix (1° gennaio 1970, ore 00:00:00 UTC). Fornito quando l'attestazione auth_time è inclusa nel parametro claims della richiesta di autenticazione.
at_hash string Hash del token di accesso. Fornisce la convalida che il token di accesso è collegato al token ID. Se il token ID viene emesso con un valore access_token nel flusso server, questa rivendicazione è sempre inclusa.
email string L'indirizzo email dell'utente. Fornito solo se hai incluso l'ambito email nella richiesta. Il valore di questa rivendicazione potrebbe non essere univoco per questo account e potrebbe cambiare nel tempo, pertanto non devi utilizzarlo come identificatore principale per il collegamento al record utente. Inoltre, non puoi fare affidamento al dominio dell'attestazione email per identificare gli utenti delle organizzazioni Google Workspace o Cloud; utilizza invece l'attestazione hd.

Avviso: non utilizzare l'indirizzo email come identificatore perché un Account Google può avere più indirizzi email in momenti diversi. Utilizza sempre il campo sub come identificatore dell'utente.
email_verified boolean Vero se l'indirizzo email dell'utente è stato verificato; falso in caso contrario.
name string Il nome completo dell'utente, in un formato visualizzabile. Potrebbe essere fornito quando l'ambito della richiesta includeva la stringa profile o il token ID viene restituito da un aggiornamento del token.
picture string L'URL dell'immagine del profilo dell'utente. Potrebbe essere fornito quando l'ambito della richiesta includeva la stringa profile o il token ID viene restituito da un aggiornamento del token.
given_name string Il nome o i nomi dell'utente. Potrebbe essere fornito quando è presente una rivendicazione name.
family_name string Il cognome o i cognomi dell'utente. Potrebbe essere fornito quando è presente una rivendicazione name.
hd string Il dominio associato all'organizzazione Google Workspace o Cloud dell'utente. Fornito solo se l'utente appartiene a un'organizzazione Google Cloud. Devi selezionare questa rivendicazione quando limiti l'accesso a una risorsa solo ai membri di determinati domini. L'assenza di questa rivendicazione indica che l'account non appartiene a un dominio ospitato da Google.

Endpoint di autorizzazione

L'endpoint di autorizzazione viene utilizzato per autenticare l'utente e ottenere un codice di autorizzazione o token.

URL: https://accounts.google.com/o/oauth2/v2/auth

Metodi di richiesta supportati: GET, POST

Parametri di richiesta

Parametro Tipo Obbligatorio Descrizione
client_id string Obbligatorio La stringa dell'identificatore client ottenuta dalla console Google Cloud.
nonce string Facoltativo Un valore casuale generato dalla tua app che consente la protezione dal replay. Obbligatorio solo se viene richiesto un token ID (quando response_type include id_token).
response_type string Obbligatorio Determina il flusso da utilizzare. Se il valore è code, avvia un flusso del codice di autorizzazione, richiedendo un POST all'endpoint token per ottenere i token. Se il valore è token, id_token, token id_token o id_token token, viene avviato un flusso implicito, che richiede l'utilizzo di JavaScript nell'URI di reindirizzamento per recuperare i token dal frammento URI. L'utilizzo di token in qualsiasi modulo è fortemente sconsigliato, in quanto espone i token di accesso nell'URL. Questo valore è vietato in OAuth 2.1.
response_mode string Facoltativo Specifica la modalità di invio della risposta di autorizzazione. Se response_type è code, il valore predefinito è query. Per gli altri tipi di risposta, il valore predefinito è fragment. Valori supportati: query, fragment, form_post.
redirect_uri string Obbligatorio Determina dove viene inviata la risposta. Il valore di questo parametro deve corrispondere esattamente a uno dei valori di reindirizzamento autorizzati che hai impostato nella console Google Cloud (inclusi lo schema HTTP o HTTPS, le maiuscole e minuscole e la barra "/" finale, se presente). Gli URI di reindirizzamento e le origini JavaScript autorizzate devono rispettare le regole di convalida descritte nella documentazione Convalida URI OAuth 2.0.
scope string Obbligatorio Un elenco non ordinato di ambiti delimitati da spazi. L'elenco deve includere il valore openid e poi il valore profile, il valore email o entrambi. Puoi anche includere ambiti non OIDC. Se è presente il valore dell'ambito profile, il token ID potrebbe (ma non è garantito) includere le rivendicazioni profile predefinite dell'utente. Se è presente il valore dell'ambito email, il token ID include le rivendicazioni email e email_verified. Per saperne di più, consulta Ambiti OAuth 2.0.
state string Consigliato Una stringa opaca che viene inviata e ricevuta nel protocollo, ovvero viene restituita come parametro URI nel flusso del codice di autorizzazione e nel frammento URI nel flusso implicito. state può essere utile per correlare richieste e risposte. Poiché il tuo redirect_uri può essere indovinato, l'utilizzo di un valore state può aumentare la certezza che una connessione in entrata sia il risultato di una richiesta di autenticazione avviata dalla tua app. In questo modo, viene fornita protezione da attacchi come il cross-site request forgery.
access_type string Facoltativo I valori consentiti sono offline e online. Se la tua applicazione deve aggiornare i token di accesso quando l'utente non è presente nel browser, utilizza offline. Questo valore è necessario per ottenere un token di aggiornamento restituito.
hd string Facoltativo Semplifica la procedura di accesso per gli account di proprietà di un'organizzazione Google Cloud. Se includi il dominio dell'organizzazione Google Cloud (ad esempio mycollege.edu), puoi indicare che l'interfaccia utente di selezione dell'account deve essere ottimizzata per gli account di quel dominio. Per eseguire l'ottimizzazione per gli account organizzazione Google Cloud in generale anziché per un solo dominio dell'organizzazione Google Cloud, imposta un valore asterisco (*): hd=*.
login_hint string Facoltativo Quando la tua app sa quale utente sta tentando di autenticare, può fornire questo parametro come suggerimento al server di autenticazione. Il passaggio di questo suggerimento sopprime il Selettore account e precompila la casella email nel modulo di accesso o seleziona la sessione corretta, il che può aiutarti a evitare problemi che si verificano se la tua app accede all'account utente errato. Il valore può essere un indirizzo email o la stringa sub, che equivale all'ID Google dell'utente.
prompt string Facoltativo Un elenco delimitato da spazi di valori stringa che specifica se il server di autorizzazione richiede all'utente la riautenticazione e il consenso. Valori possibili: none (nessuna UI), consent (richiesta di consenso), select_account (richiesta di selezione dell'account).
hl string Facoltativo Un tag di lingua BCP 47 utilizzato per specificare la lingua di visualizzazione per le schermate di accesso, di selezione dell'account e del consenso. L'utilizzo di questo parametro è sconsigliato, in quanto le impostazioni del browser e le preferenze dell'Account Google sono in genere indicatori migliori della lingua preferita dall'utente.
include_granted_scopes boolean Facoltativo Se questo parametro viene fornito con il valore true e la richiesta di autorizzazione viene concessa, l'autorizzazione includerà tutte le autorizzazioni precedenti concesse a questa combinazione utente/applicazione per altri ambiti. Vedi Autorizzazione incrementale.
claims object Facoltativo Il parametro claims viene utilizzato per specificare uno o più campi facoltativi da includere nella risposta UserInfo o nel token ID. Per richiedere la rivendicazione auth_time, utilizza claims={\"id_token\":{\"auth_time\":{\"essential\":true}}}.

Parametri di risposta

La risposta di autorizzazione viene inviata all'URI di reindirizzamento del client (redirect_uri) utilizzando un reindirizzamento HTTP GET. I parametri di risposta vengono aggiunti all'URI di reindirizzamento nella stringa di query o nel frammento di URL, a seconda di response_type e response_mode.

Parametro Tipo Descrizione
iss string L'identificatore dell'emittente. In base a RFC 9207, questo parametro viene sempre restituito e impostato su https://accounts.google.com.
code string Il codice di autorizzazione che può essere scambiato con un token di accesso e un token ID.
state string Lo stesso valore del parametro state della richiesta.
id_token string Un token JWT (JSON Web Token) che contiene informazioni sull'identità dell'utente.
access_token string Il token di accesso che può essere inviato a un'API di Google.
token_type string Il tipo di token restituito. Sempre Bearer.
expires_in integer La durata del token di accesso in secondi, rispetto al momento dell'emissione del token.
scope string Gli ambiti di accesso concessi da code o access_token espressi come elenco di stringhe sensibili alle maiuscole e minuscole delimitate da spazi.
error string Un codice di errore se la richiesta non è andata a buon fine.
error_description string Una descrizione dell'errore se la richiesta non è andata a buon fine.

Risposte di errore

Per l'endpoint di autorizzazione, gli errori vengono restituiti al redirect_uri del client come parametri nella stringa di query o nel frammento di URL oppure vengono visualizzati all'utente come pagina di errore ospitata da Google.

Errori reindirizzati

I seguenti codici di errore potrebbero essere restituiti al tuo redirect_uri:

Errore Descrizione
access_denied L'utente o il server di autorizzazione ha negato la richiesta.
invalid_request La richiesta non include un parametro obbligatorio, include un valore parametro non valido, include un parametro più di una volta o ha un formato errato.
unauthorized_client Il client non è autorizzato a richiedere un codice di autorizzazione utilizzando questo metodo.
unsupported_response_type Il server di autorizzazione non supporta l'ottenimento di un codice di autorizzazione utilizzando questo metodo.
invalid_scope L'ambito richiesto non è valido, sconosciuto o ha un formato non corretto.

Errori rivolti agli utenti

In alcuni casi, ad esempio quando client_id o redirect_uri non è valido, il server di autorizzazione non può reindirizzare in modo sicuro l'utente alla tua applicazione. In questi casi, all'utente viene mostrata direttamente una pagina di errore.

Errore Descrizione
admin_policy_enforced L'Account Google non è in grado di autorizzare uno o più ambiti richiesti a causa delle norme del suo amministratore di Google Workspace. Per saperne di più su come un amministratore può limitare l'accesso finché non viene concesso esplicitamente al tuo identificatore client OAuth, consulta l'articolo del Centro assistenza per gli amministratori di Google Workspace.
disallowed_useragent L'endpoint di autorizzazione viene visualizzato all'interno di un user agent incorporato non consentito dalle norme OAuth 2.0 di Google.
org_internal L'identificatore client OAuth nella richiesta fa parte di un progetto che limita l'accesso agli Account Google in una organizzazione Google Cloud specifica.
deleted_client Il client OAuth utilizzato per effettuare la richiesta è stato eliminato. L'eliminazione può avvenire manualmente o automaticamente nel caso di client non utilizzati.
invalid_grant Il parametro code_challenge non è valido o è mancante quando viene utilizzato PKCE. Quando aggiorni un token di accesso o utilizzi l'autorizzazione incrementale, il token potrebbe essere scaduto, invalidato o l'account utente potrebbe essere stato eliminato o disattivato.
redirect_uri_mismatch redirect_uri passato nella richiesta non corrisponde a un URI di reindirizzamento autorizzato per l'identificatore client. Esamina gli URI di reindirizzamento autorizzati nella console Google Cloud. Questo errore può verificarsi anche se la richiesta utilizza il flusso OAuth out-of-band (OOB) ritirato.
invalid_client L'origine da cui è stata effettuata la richiesta non è autorizzata per questo client, la configurazione del client non è corretta o il client secret OAuth non è corretto.
origin_mismatch Lo schema, il dominio e/o la porta di JavaScript che ha generato la richiesta di autorizzazione non corrispondono a un URI di origine JavaScript autorizzato registrato per l'identificatore client OAuth. Esamina le origini JavaScript autorizzate nella console Google Cloud.
invalid_request Si è verificato un problema con la richiesta. Ciò potrebbe essere dovuto a una richiesta non valida, a parametri obbligatori mancanti o all'utilizzo di un metodo di autorizzazione non supportato da Google.

Endpoint token

L'endpoint token viene utilizzato per scambiare un codice di autorizzazione con un token di accesso e un token ID.

URL: https://oauth2.googleapis.com/token

Metodo di richiesta supportato: POST

Parametri di richiesta (concessione del codice di autorizzazione)

Parametro Tipo Obbligatorio Descrizione
code string Obbligatorio Il codice di autorizzazione ricevuto dall'endpoint di autorizzazione.
client_id string Obbligatorio L'identificatore client per la tua applicazione, ottenuto dalla console Google Cloud.
client_secret string Obbligatorio Il client secret per la tua applicazione, ottenuto dalla console Google Cloud.
redirect_uri string Obbligatorio L'URI di reindirizzamento utilizzato nella richiesta di autorizzazione iniziale. Gli URI di reindirizzamento e le origini JavaScript autorizzate devono rispettare le regole di convalida descritte nella documentazione Convalida URI OAuth 2.0.
grant_type string Obbligatorio Deve essere impostato su authorization_code.

Parametri di richiesta (flusso del dispositivo)

Parametro Tipo Obbligatorio Descrizione
client_id string Obbligatorio L'identificatore client per la tua applicazione, ottenuto dalla console Google Cloud.
client_secret string Obbligatorio Il client secret per la tua applicazione, ottenuto dalla console Google Cloud.
device_code string Obbligatorio Il device_code restituito dall'endpoint di autorizzazione del dispositivo.
grant_type string Obbligatorio Deve essere impostato su urn:ietf:params:oauth:grant-type:device_code.

Parametri di richiesta (aggiornamento di un token di accesso)

Parametro Tipo Obbligatorio Descrizione
client_id string Obbligatorio L'identificatore client per la tua applicazione, ottenuto dalla console Google Cloud.
client_secret string Obbligatorio Il client secret per la tua applicazione, ottenuto dalla console Google Cloud.
grant_type string Obbligatorio Deve essere impostato su refresh_token come definito nella specifica OpenID Connect Refresh Tokens.
refresh_token string Obbligatorio Il token di aggiornamento restituito dallo scambio del codice di autorizzazione.
scope string Facoltativo Un elenco delimitato da spazi degli ambiti richiesti per il nuovo token di accesso. Gli ambiti richiesti devono essere un sottoinsieme degli ambiti concessi nella richiesta di autorizzazione originale.

Corpo della risposta

I campi della risposta vengono restituiti in un oggetto JSON nel corpo della risposta HTTP alla richiesta POST del richiedente a https://oauth2.googleapis.com/token.

Campo Tipo Descrizione
access_token string Il token di accesso che può essere inviato a un'API di Google.
expires_in integer La durata del token di accesso in secondi, rispetto al momento dell'emissione del token.
id_token string Un token JWT (JSON Web Token) che contiene informazioni sull'identità dell'utente. Questo token viene restituito durante lo scambio iniziale del codice di autorizzazione e può essere restituito anche durante una richiesta di token di aggiornamento se è stato concesso l'ambito openid.
scope string Gli ambiti di accesso concessi da access_token espressi come un elenco di stringhe sensibili alle maiuscole e minuscole delimitate da spazi.
token_type string Il tipo di token restituito. Sempre Bearer.
refresh_token string (Facoltativo) Un token che può essere utilizzato per ottenere nuovi token di accesso. Questo campo viene restituito solo nello scambio iniziale di un codice di autorizzazione se è stato richiesto access_type=offline.
refresh_token_expires_in integer (Facoltativo) La durata rimanente del token di aggiornamento in secondi. Questo valore viene impostato solo quando l'utente concede l'accesso basato sul tempo.

Risposte di errore

Se la richiesta non riesce, il server di autorizzazione restituisce un oggetto JSON con i seguenti campi:

Campo Tipo Descrizione
error string Un codice di errore.
error_description string Una descrizione dell'errore se la richiesta non è andata a buon fine.

La tabella seguente descrive i potenziali codici di errore e i relativi codici di stato HTTP:

Errore Codice di stato HTTP Descrizione
invalid_request 400 Nella richiesta manca un parametro obbligatorio, è incluso un valore parametro non valido o il formato non è corretto.
invalid_client 401 L'autenticazione client non è riuscita. Ad esempio, client_id o client_secret non è valido oppure il tipo di client non è corretto.
invalid_grant 400 Il codice di autorizzazione, il token di aggiornamento o il codice dispositivo fornito non è valido, è scaduto, è stato revocato o non corrisponde all'URI di reindirizzamento utilizzato nella richiesta di autorizzazione.
unauthorized_client 400 Il client autenticato non è autorizzato a utilizzare questo tipo di concessione di autorizzazione.
unsupported_grant_type 400 Il tipo di concessione di autorizzazione non è supportato dal server di autorizzazione.
invalid_scope 400 L'ambito richiesto non è valido, sconosciuto o ha un formato non corretto.
authorization_pending 428 (Flusso di dispositivi) L'utente non ha ancora completato il flusso di autorizzazione.
slow_down 429 (Flusso dispositivo) Il dispositivo invia richieste di polling troppo spesso.
access_denied 403 (Device Flow) L'utente ha rifiutato di concedere l'accesso al dispositivo.
expired_token 400 (Device Flow) device_code è scaduto.
admin_policy_enforced 400 L'utente non è in grado di autorizzare gli ambiti richiesti a causa dei criteri applicati dal suo amministratore di Google Workspace.
org_internal 403 L'identificatore client fa parte di un progetto che limita l'accesso a un'organizzazione Google Cloud specifica.

Endpoint di autorizzazione dispositivo

L'endpoint di autorizzazione del dispositivo viene utilizzato nel flusso OAuth 2.0 per i dispositivi per ottenere un codice utente e un URL di verifica per i dispositivi con funzionalità di input limitate.

URL: https://oauth2.googleapis.com/device/code

Metodo di richiesta supportato: POST

Parametri di richiesta

Parametro Tipo Obbligatorio Descrizione
client_id string Obbligatorio L'identificatore client per la tua applicazione, ottenuto dalla console Google Cloud.
scope string Obbligatorio Un elenco delimitato da spazi degli ambiti che identificano le risorse a cui la tua applicazione potrebbe accedere per conto dell'utente.

Corpo della risposta

La risposta è un oggetto JSON che contiene i seguenti campi:

Campo Tipo Descrizione
device_code string Un valore assegnato in modo univoco da Google per identificare il dispositivo che esegue l'app che richiede l'autorizzazione.
user_code string Un valore sensibile alle maiuscole e minuscole che identifica a Google gli ambiti a cui l'applicazione richiede l'accesso. L'interfaccia utente chiederà all'utente di inserire questo valore su un dispositivo separato con funzionalità di input più avanzate.
verification_url string Un URL a cui l'utente deve accedere su un dispositivo separato per inserire il user_code e concedere o negare l'accesso alla tua applicazione.
expires_in integer Il periodo di tempo, in secondi, durante il quale device_code e user_code sono validi.
interval integer Il periodo di tempo, in secondi, che il dispositivo deve attendere tra le richieste di polling.

Endpoint di revoca

L'endpoint di revoca consente alla tua applicazione di revocare un token di accesso o un token di aggiornamento.

URL: https://oauth2.googleapis.com/revoke

Metodo di richiesta supportato: POST

Parametri di richiesta

Parametro Tipo Obbligatorio Descrizione
token string Obbligatorio Il token di accesso o il token di aggiornamento che vuoi revocare.

Corpo della risposta

Se la revoca ha esito positivo, la risposta è un HTTP 200 OK vuoto. Se la revoca non va a buon fine, viene restituita una risposta di errore in un oggetto JSON.

Campo Tipo Descrizione
error string Un codice di errore se la richiesta non è andata a buon fine.
error_description string Una descrizione dell'errore se la richiesta non è andata a buon fine.

La seguente tabella descrive i potenziali codici di errore:

Errore Descrizione
invalid_token Il token fornito nella richiesta è già scaduto o è già stato revocato.
invalid_request Nella richiesta manca un parametro obbligatorio, è incluso un valore parametro non valido o il formato non è corretto.

Endpoint UserInfo

L'endpoint UserInfo restituisce le informazioni del profilo dell'utente autenticato.

URL: https://openidconnect.googleapis.com/v1/userinfo

Metodi di richiesta supportati: GET, POST

Intestazioni delle richieste

Intestazione Descrizione
Authorization Obbligatorio. Deve essere impostato su Bearer: access_token.

Corpo della risposta

I campi della risposta vengono restituiti in un oggetto JSON nel corpo della risposta HTTP alla richiesta GET o POST del richiedente a https://openidconnect.googleapis.com/v1/userinfo.

Campo Tipo Descrizione
sub string Obbligatorio. Un identificatore per l'utente, univoco tra tutti gli Account Google e mai riutilizzato. Stringa sensibile alle maiuscole e minuscole che non superi i 255 caratteri.
name string Il nome completo dell'utente, in un formato visualizzabile.
given_name string Il nome o i nomi dell'utente.
family_name string Il cognome o i cognomi dell'utente.
picture string L'URL dell'immagine del profilo dell'utente.
email string L'indirizzo email dell'utente.
email_verified boolean Indica se l'indirizzo email dell'utente è stato verificato.
hd string Il dominio ospitato associato all'organizzazione Google Workspace o Cloud dell'utente.

Endpoint Tokeninfo

L'endpoint tokeninfo è un'implementazione specifica di Google utilizzata per convalidare un token ID a scopo di debug.

URL: https://oauth2.googleapis.com/tokeninfo

Metodi di richiesta supportati: GET, POST

Parametri di richiesta

Parametro Tipo Obbligatorio Descrizione
id_token string Obbligatorio Il token ID da convalidare.

Corpo della risposta

I campi della risposta vengono restituiti in un oggetto JSON nel corpo della risposta HTTP alla richiesta GET o POST del richiedente a https://oauth2.googleapis.com/tokeninfo.

Campo Tipo Descrizione
iss string L'identificatore dell'emittente. Sempre https://accounts.google.com.
sub string Un identificatore per l'utente, univoco tra tutti gli Account Google e mai riutilizzato.
aud string Il pubblico a cui è destinato il token ID. Si tratta dell'identificatore client della tua applicazione, ottenuto dalla console Google Cloud.
iat integer Ora in cui è stato emesso il JWT. Rappresentato come il numero di secondi dal giorno 01/01/1970 alle ore 00:00:00 UTC.
exp integer Ora di scadenza a partire dalla quale il token ID non deve essere accettato per l'elaborazione. Rappresentato come il numero di secondi dal giorno 01/01/1970 alle ore 00:00:00 UTC.
email string L'indirizzo email dell'utente.
email_verified string Indica se l'indirizzo email dell'utente è stato verificato. Il valore è una stringa "true" o "false".
access_type string Il tipo di accesso richiesto nella richiesta di autorizzazione originale.
azp string L'identificatore client del presentatore autorizzato, ottenuto dalla console Google Cloud.
scope string L'elenco delimitato da spazi degli ambiti concessi al token.
alg string L'algoritmo utilizzato per firmare il token ID.
kid string L'ID chiave utilizzato per firmare il token ID.
typ string Il tipo di token. Sempre JWT.