Documentation de référence de l'API Google OpenID Connect

Cette page décrit l'implémentation de Google en tant que fournisseur OpenID Connect et fournit la référence technique pour les points de terminaison OIDC de Google. La spécification OpenID Connect (OIDC) Core 1.0 définit le protocole d'authentification des utilisateurs et d'obtention des informations d'identité.

Cette référence n'est pas destinée à fournir des instructions détaillées sur l'implémentation d'OIDC. Pour en savoir plus, consultez le guide OpenID Connect.

Document de découverte

Le document de découverte contient des métadonnées sur la configuration OpenID Connect de Google, telles que définies dans la spécification OpenID Connect Discovery 1.0.

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

Méthode de requête acceptée : GET

Corps de la réponse

Les champs de réponse sont renvoyés dans un objet JSON dans le corps de la réponse HTTP à la requête GET de l'utilisateur à https://accounts.google.com/.well-known/openid-configuration.

Champ Type Description
issuer string Identifiant de l'émetteur. URL sensible à la casse utilisant le schéma https. La valeur moderne est https://accounts.google.com. Toutefois, accounts.google.com est également renvoyé pour les anciennes implémentations.
authorization_endpoint string URL du point de terminaison d'autorisation.
device_authorization_endpoint string URL du point de terminaison d'autorisation de l'appareil.
token_endpoint string URL du point de terminaison du jeton.
userinfo_endpoint string URL du point de terminaison UserInfo.
revocation_endpoint string URL du point de terminaison de révocation.
jwks_uri string URL du document JWKS (JSON Web Key Set).
response_types_supported array Liste des valeurs response_type acceptées.
response_modes_supported array Liste des valeurs response_mode acceptées.
authorization_response_iss_parameter_supported boolean Valeur booléenne indiquant la compatibilité avec la norme RFC 9207.
subject_types_supported array Liste des types d'identifiants de sujet acceptés.
id_token_signing_alg_values_supported array Liste des algorithmes compatibles pour la signature du jeton d'identité.
scopes_supported array Liste des valeurs d'étendue acceptées.
claims_supported array Liste des revendications acceptées.
token_endpoint_auth_methods_supported array Liste des méthodes d'authentification acceptées pour le point de terminaison du jeton.
code_challenge_methods_supported array Liste des méthodes de code challenge acceptées pour PKCE.
grant_types_supported array Liste des types d'attribution OAuth 2.0 acceptés.

Jeton d'identité (revendications)

La valeur id_token renvoyée dans les réponses est un jeton Web JSON (JWT) signé qui doit être validé à l'aide du matériel de clé obtenu à partir de jwks_uri dans le document de découverte. Le tableau suivant décrit le contenu de la charge utile du jeton d'identité décodé.

Récupérer Type Description
iss string Obligatoire. Identifiant de l'émetteur de la réponse. Généralement https://accounts.google.com, mais accounts.google.com est également renvoyé pour les anciennes implémentations.
sub string Obligatoire. Identifiant unique de l'utilisateur parmi tous les comptes Google. Il n'est jamais réutilisé. Un compte Google peut avoir plusieurs adresses e-mail à différents moments, mais la valeur sub n'est jamais modifiée. Utilisez sub dans votre application comme clé d'identifiant unique pour l'utilisateur. Longueur maximale de 255 caractères ASCII sensibles à la casse.
azp string Identifiant client du présentateur autorisé, obtenu à partir de la console Google Cloud. Cette revendication n'est nécessaire que lorsque la partie qui demande le jeton d'identité n'est pas la même que l'audience du jeton d'identité.
aud string Obligatoire. Audience à laquelle le jeton d'identité est destiné. Il s'agit de l'identifiant client de votre application, obtenu à partir de la console Google Cloud.
iat integer Obligatoire. Heure à laquelle le jeton d'identité a été émis. Représenté en heure Unix (nombre entier de secondes).
exp integer Obligatoire. Heure d'expiration à partir de laquelle le jeton d'identité ne doit plus être accepté. Représenté en heure Unix (nombre entier de secondes).
nonce string Valeur de nonce fournie par votre application dans la requête d'authentification. Vous devez vous protéger contre les attaques par rejeu en ne présentant cette valeur qu'une seule fois.
auth_time integer Heure à laquelle l'authentification de l'utilisateur a eu lieu. Il s'agit d'un nombre JSON représentant le nombre de secondes écoulées depuis l'époque Unix (1er janvier 1970, 00:00:00 UTC). Fourni lorsque la revendication auth_time est incluse dans le paramètre claims de la requête d'authentification.
at_hash string Hachage du jeton d'accès. Valide que le jeton d'accès est lié au jeton d'identité. Si le jeton d'identité est émis avec une valeur access_token dans le flux du serveur, cette revendication est toujours incluse.
email string Adresse e-mail de l'utilisateur. Fourni uniquement si vous avez inclus le champ d'application email dans votre requête. La valeur de cette revendication n'est pas forcément unique à ce compte et peut changer au fil du temps. Par conséquent, vous ne devez pas l'utiliser comme identifiant principal pour l'associer à votre enregistrement utilisateur. Vous ne pouvez pas non plus vous appuyer sur le domaine de la revendication email pour identifier les utilisateurs des organisations Google Workspace ou Cloud. Utilisez plutôt la revendication hd.

Avertissement : N'utilisez pas l'adresse e-mail comme identifiant, car un compte Google peut avoir plusieurs adresses e-mail à différents moments. Utilisez toujours le champ sub comme identifiant de l'utilisateur.
email_verified boolean True si l'adresse e-mail de l'utilisateur a été validée, false dans le cas contraire.
name string Nom complet de l'utilisateur, sous une forme affichable. Peut être fourni lorsque le champ d'application de la requête inclut la chaîne profile ou que le jeton d'identité est renvoyé à partir d'une actualisation du jeton.
picture string URL de la photo de profil de l'utilisateur. Peut être fourni lorsque le champ d'application de la requête inclut la chaîne profile ou lorsque le jeton d'identité est renvoyé à partir d'une actualisation du jeton.
given_name string Prénom(s) de l'utilisateur. Peut être fourni lorsqu'une revendication name est présente.
family_name string Nom(s) de famille de l'utilisateur. Peut être fourni lorsqu'une revendication name est présente.
hd string Domaine associé à l'organisation Google Workspace ou Cloud de l'utilisateur. Fourni uniquement si l'utilisateur appartient à une organisation Google Cloud. Vous devez cocher cette case lorsque vous limitez l'accès à une ressource aux membres de certains domaines uniquement. L'absence de cette revendication indique que le compte n'appartient pas à un domaine hébergé par Google.

Point de terminaison Autorisation

Le point de terminaison d'autorisation permet d'authentifier l'utilisateur et d'obtenir un code d'autorisation ou des jetons.

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

Méthodes de requête acceptées : GET, POST

Paramètres de requête

Paramètre Type Obligatoire Description
client_id string Obligatoire Chaîne d'identifiant client que vous obtenez dans la console Google Cloud.
nonce string Facultatif Valeur aléatoire générée par votre application qui permet la protection contre les attaques par rejeu. Obligatoire uniquement si vous demandez un jeton d'identité (lorsque response_type inclut id_token).
response_type string Obligatoire Détermine le flux à utiliser. Si la valeur est code, un flux de code d'autorisation est lancé, ce qui nécessite une POST au point de terminaison du jeton pour obtenir les jetons. Si la valeur est token, id_token, token id_token ou id_token token, un flux implicite est lancé, ce qui nécessite l'utilisation de JavaScript au niveau de l'URI de redirection pour récupérer les jetons du fragment d'URI. L'utilisation de token sous quelque forme que ce soit est fortement déconseillée, car elle expose les jetons d'accès dans l'URL. Cette valeur est interdite dans OAuth 2.1.
response_mode string Facultatif Indique comment la réponse d'autorisation est fournie. Si response_type est défini sur code, la valeur par défaut est query. Pour les autres types de réponse, la valeur par défaut est fragment. Valeurs autorisées : query, fragment, form_post.
redirect_uri string Obligatoire Détermine où la réponse est envoyée. La valeur de ce paramètre doit correspondre exactement à l'une des valeurs de redirection autorisées que vous avez définies dans la console Google Cloud (y compris le schéma HTTP ou HTTPS, la casse et la barre oblique de fin, le cas échéant). Les URI de redirection et les origines JavaScript autorisées doivent respecter les règles de validation décrites dans la documentation Validation des URI OAuth 2.0.
scope string Obligatoire Liste non ordonnée de champs d'application délimités par des espaces. La liste doit inclure la valeur openid, puis la valeur profile, la valeur email ou les deux. Vous pouvez également inclure des habilitations non OIDC. Si la valeur du champ d'application profile est présente, le jeton d'identité peut inclure (mais ce n'est pas garanti) les revendications profile par défaut de l'utilisateur. Si la valeur du champ d'application email est présente, le jeton d'identité inclut les revendications email et email_verified. Pour en savoir plus, consultez Champs d'application OAuth 2.0.
state string Recommandé Chaîne opaque qui est renvoyée dans le protocole, c'est-à-dire qu'elle est renvoyée en tant que paramètre URI dans le flux de code d'autorisation et dans le fragment URI dans le flux implicite. Le state peut être utile pour corréler les requêtes et les réponses. Étant donné que votre redirect_uri peut être deviné, l'utilisation d'une valeur state peut vous assurer qu'une connexion entrante est le résultat d'une requête d'authentification initiée par votre application. Cela vous protège contre les attaques telles que la falsification de requête intersite.
access_type string Facultatif Les valeurs autorisées sont offline et online. Si votre application doit actualiser les jetons d'accès lorsque l'utilisateur n'est pas présent dans le navigateur, utilisez offline. Cette valeur est requise pour obtenir un jeton d'actualisation.
hd string Facultatif Simplifiez le processus de connexion pour les comptes appartenant à une organisation Google Cloud. En incluant le domaine de l'organisation Google Cloud (par exemple, mycollege.edu), vous pouvez indiquer que l'interface utilisateur de sélection de compte doit être optimisée pour les comptes de ce domaine. Pour optimiser les comptes d'organisation Google Cloud en général plutôt qu'un seul domaine d'organisation Google Cloud, définissez la valeur d'un astérisque (*) : hd=*.
login_hint string Facultatif Lorsque votre application sait quel utilisateur elle tente d'authentifier, elle peut fournir ce paramètre comme indication au serveur d'authentification. Si vous transmettez cet indice, le sélecteur de compte est supprimé. La zone de saisie de l'adresse e-mail est préremplie dans le formulaire de connexion ou la session appropriée est sélectionnée. Cela peut vous aider à éviter les problèmes qui se produisent si votre application se connecte au mauvais compte utilisateur. La valeur peut être une adresse e-mail ou la chaîne sub, qui équivaut à l'ID Google de l'utilisateur.
prompt string Facultatif Liste de valeurs de chaîne délimitées par des espaces qui indique si le serveur d'autorisation invite l'utilisateur à se réauthentifier et à donner son consentement. Valeurs possibles : none (aucune UI), consent (demande de consentement), select_account (invite à sélectionner un compte).
hl string Facultatif Balise de langue BCP 47 utilisée pour spécifier la langue d'affichage des écrans de connexion, de sélection du compte et de consentement. Nous vous déconseillons d'utiliser ce paramètre, car les paramètres du navigateur et les préférences du compte Google sont généralement de meilleurs indicateurs de la préférence linguistique de l'utilisateur.
include_granted_scopes boolean Facultatif Si ce paramètre est fourni avec la valeur true et que la demande d'autorisation est accordée, l'autorisation inclura toutes les autorisations précédemment accordées à cette combinaison utilisateur/application pour d'autres niveaux d'accès. Consultez Autorisation incrémentielle.
claims object Facultatif Le paramètre "claims" permet de spécifier un ou plusieurs champs facultatifs à inclure dans la réponse UserInfo ou le jeton d'identité. Pour demander la revendication auth_time, utilisez claims={\"id_token\":{\"auth_time\":{\"essential\":true}}}.

Paramètres de réponse

La réponse d'autorisation est envoyée à l'URI de redirection du client (redirect_uri) à l'aide d'une redirection HTTP GET. Les paramètres de réponse sont ajoutés à l'URI de redirection dans la chaîne de requête ou le fragment d'URL, en fonction de response_type et response_mode.

Paramètre Type Description
iss string Identifiant de l'émetteur. Conformément à la norme RFC 9207, ce paramètre est toujours renvoyé et défini sur https://accounts.google.com.
code string Code d'autorisation pouvant être échangé contre un jeton d'accès et un jeton d'identité.
state string La même valeur que le paramètre state de la requête.
id_token string Jeton Web JSON (JWT) contenant des informations sur l'identité de l'utilisateur.
access_token string Jeton d'accès pouvant être envoyé à une API Google.
token_type string Type de jeton renvoyé. Toujours Bearer.
expires_in integer Durée de vie du jeton d'accès en secondes, par rapport à l'heure à laquelle il a été émis.
scope string Champs d'application de l'accès accordé par code ou access_token, exprimés sous forme de liste de chaînes sensibles à la casse et délimitées par des espaces.
error string Code d'erreur si la requête a échoué.
error_description string Description de l'erreur si la requête a échoué.

Réponses d'erreur

Pour le point de terminaison d'autorisation, les erreurs sont renvoyées au redirect_uri du client en tant que paramètres dans la chaîne de requête ou le fragment d'URL, ou affichées à l'utilisateur sous la forme d'une page d'erreur hébergée par Google.

Erreurs redirigées

Les codes d'erreur suivants peuvent être renvoyés à votre redirect_uri :

Erreur Description
access_denied L'utilisateur ou le serveur d'autorisation a refusé la demande.
invalid_request La requête ne contient pas un paramètre obligatoire, inclut une valeur de paramètre non valide, inclut un paramètre plusieurs fois ou est incorrecte d'une autre manière.
unauthorized_client Le client n'est pas autorisé à demander un code d'autorisation à l'aide de cette méthode.
unsupported_response_type Le serveur d'autorisation n'est pas compatible avec l'obtention d'un code d'autorisation à l'aide de cette méthode.
invalid_scope Le champ d'application demandé n'est pas valide, est inconnu ou son format n'est pas correct.

Erreurs visibles par l'utilisateur

Dans certains cas, par exemple lorsque le client_id ou le redirect_uri n'est pas valide, le serveur d'autorisation ne peut pas rediriger l'utilisateur vers votre application de manière sécurisée. Dans ces cas, une page d'erreur s'affiche directement pour l'utilisateur.

Erreur Description
admin_policy_enforced Le compte Google ne peut pas autoriser un ou plusieurs des niveaux d'accès demandés en raison des règles de son administrateur Google Workspace. Pour savoir comment un administrateur peut restreindre l'accès jusqu'à ce qu'il soit explicitement accordé à votre identifiant client OAuth, consultez l'article d'aide pour les administrateurs Google Workspace.
disallowed_useragent Le point de terminaison d'autorisation s'affiche dans un agent utilisateur intégré non autorisé par les Règles OAuth 2.0 de Google.
org_internal L'identifiant client OAuth de la requête fait partie d'un projet limitant l'accès aux comptes Google dans une organisation Google Cloud spécifique.
deleted_client Le client OAuth utilisé pour effectuer la requête a été supprimé. La suppression peut être effectuée manuellement ou automatiquement dans le cas de clients inutilisés.
invalid_grant Le paramètre code_challenge n'est pas valide ou est manquant lorsque vous utilisez PKCE. Lors de l'actualisation d'un jeton d'accès ou de l'utilisation de l'autorisation incrémentielle, il est possible que le jeton ait expiré ou ait été invalidé, ou que le compte utilisateur ait été supprimé ou désactivé.
redirect_uri_mismatch L'redirect_uri transmis dans la requête ne correspond pas à un URI de redirection autorisé pour l'identifiant client. Consultez les URI de redirection autorisés dans la console Google Cloud. Cette erreur peut également se produire si la requête utilise le flux OAuth hors bande (OOB) obsolète.
invalid_client L'origine à partir de laquelle la requête a été effectuée n'est pas autorisée pour ce client, la configuration du client est incorrecte ou le code secret du client OAuth est incorrect.
origin_mismatch Le schéma, le domaine et/ou le port du code JavaScript à l'origine de la demande d'autorisation ne correspondent pas à un URI d'origine JavaScript autorisé enregistré pour l'identifiant client OAuth. Consultez les origines JavaScript autorisées dans la console Google Cloud.
invalid_request Un problème est survenu lors du traitement de la requête. Cela peut être dû à une requête mal formée, à des paramètres requis manquants ou à l'utilisation d'une méthode d'autorisation non acceptée par Google.

Point de terminaison du jeton

Le point de terminaison du jeton est utilisé pour échanger un code d'autorisation contre un jeton d'accès et un jeton d'identité.

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

Méthode de requête acceptée : POST

Paramètres de requête (attribution du code d'autorisation)

Paramètre Type Obligatoire Description
code string Obligatoire Code d'autorisation reçu du point de terminaison d'autorisation.
client_id string Obligatoire Identifiant client de votre application, obtenu à partir de la console Google Cloud.
client_secret string Obligatoire Code secret du client pour votre application, obtenu à partir de la console Google Cloud.
redirect_uri string Obligatoire URI de redirection utilisé dans la demande d'autorisation initiale. Les URI de redirection et les origines JavaScript autorisées doivent respecter les règles de validation décrites dans la documentation Validation des URI OAuth 2.0.
grant_type string Obligatoire Vous devez saisir authorization_code.

Paramètres de requête (flux d'appareil)

Paramètre Type Obligatoire Description
client_id string Obligatoire Identifiant client de votre application, obtenu à partir de la console Google Cloud.
client_secret string Obligatoire Code secret du client pour votre application, obtenu à partir de la console Google Cloud.
device_code string Obligatoire Le device_code renvoyé par le point de terminaison d'autorisation de l'appareil.
grant_type string Obligatoire Vous devez saisir urn:ietf:params:oauth:grant-type:device_code.

Paramètres de requête (actualisation d'un jeton d'accès)

Paramètre Type Obligatoire Description
client_id string Obligatoire Identifiant client de votre application, obtenu à partir de la console Google Cloud.
client_secret string Obligatoire Code secret du client pour votre application, obtenu à partir de la console Google Cloud.
grant_type string Obligatoire Doit être défini sur refresh_token, comme défini dans la spécification Jetons d'actualisation OpenID Connect.
refresh_token string Obligatoire Jeton d'actualisation renvoyé par l'échange du code d'autorisation.
scope string Facultatif Liste de champs d'application délimités par des espaces demandés pour le nouveau jeton d'accès. Les niveaux d'accès demandés doivent être un sous-ensemble de ceux accordés dans la demande d'autorisation d'origine.

Corps de la réponse

Les champs de réponse sont renvoyés dans un objet JSON dans le corps de la réponse HTTP à la requête POST de l'utilisateur à https://oauth2.googleapis.com/token.

Champ Type Description
access_token string Jeton d'accès pouvant être envoyé à une API Google.
expires_in integer Durée de vie du jeton d'accès en secondes, par rapport à la date d'émission du jeton.
id_token string Jeton Web JSON (JWT) contenant des informations sur l'identité de l'utilisateur. Ce jeton est renvoyé lors de l'échange initial du code d'autorisation. Il peut également être renvoyé lors d'une requête de jeton d'actualisation si le champ d'application openid a été accordé.
scope string Champs d'application de l'accès accordé par access_token, exprimés sous la forme d'une liste de chaînes sensibles à la casse et délimitées par des espaces.
token_type string Type de jeton renvoyé. Toujours Bearer.
refresh_token string (Facultatif) Jeton pouvant être utilisé pour obtenir de nouveaux jetons d'accès. Ce champ n'est renvoyé que lors de l'échange initial d'un code d'autorisation si access_type=offline a été demandé.
refresh_token_expires_in integer (Facultatif) Durée de vie restante du jeton d'actualisation en secondes. Cette valeur n'est définie que lorsque l'utilisateur accorde un accès limité dans le temps.

Réponses d'erreur

Si la requête échoue, le serveur d'autorisation renvoie un objet JSON avec les champs suivants :

Champ Type Description
error string Un code d'erreur.
error_description string Description de l'erreur si la requête a échoué.

Le tableau suivant décrit les codes d'erreur potentiels et les codes d'état HTTP associés :

Erreur HTTP Status Code Description
invalid_request 400 La requête ne contient pas un paramètre obligatoire, inclut une valeur de paramètre non valide ou est incorrectement formulée.
invalid_client 401 L'authentification du client a échoué. Par exemple, client_id ou client_secret n'est pas valide, ou le type de client est incorrect.
invalid_grant 400 Le code d'autorisation, le jeton d'actualisation ou le code de l'appareil fournis sont incorrects, ont expiré, ont été révoqués ou ne correspondent pas à l'URI de redirection utilisé dans la demande d'autorisation.
unauthorized_client 400 Le client authentifié n'est pas autorisé à utiliser ce type d'attribution d'autorisation.
unsupported_grant_type 400 Le type d'autorisation n'est pas accepté par le serveur d'autorisation.
invalid_scope 400 Le champ d'application demandé n'est pas valide, est inconnu ou son format n'est pas correct.
authorization_pending 428 (Flux d'appareil) L'utilisateur n'a pas encore terminé le flux d'autorisation.
slow_down 429 (Flux d'appareil) L'appareil envoie des requêtes d'interrogation trop fréquemment.
access_denied 403 (Flux d'appareil) L'utilisateur a refusé d'accorder l'accès à l'appareil.
expired_token 400 (Flux d'appareil) Le device_code a expiré.
admin_policy_enforced 400 L'utilisateur ne peut pas autoriser les niveaux d'accès demandés en raison des règles appliquées par son administrateur Google Workspace.
org_internal 403 L'identifiant client fait partie d'un projet qui limite l'accès à une organisation Google Cloud spécifique.

Point de terminaison d'autorisation de l'appareil

Le point de terminaison d'autorisation de l'appareil est utilisé dans le flux d'authentification OAuth 2.0 pour les appareils afin d'obtenir un code utilisateur et une URL de validation pour les appareils dont les capacités de saisie sont limitées.

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

Méthode de requête acceptée : POST

Paramètres de requête

Paramètre Type Obligatoire Description
client_id string Obligatoire Identifiant client de votre application, obtenu à partir de la console Google Cloud.
scope string Obligatoire Liste de champs d'application délimités par des espaces qui identifient les ressources auxquelles votre application peut accéder pour le compte de l'utilisateur.

Corps de la réponse

La réponse est un objet JSON qui contient les champs suivants :

Champ Type Description
device_code string Valeur que Google attribue de manière unique pour identifier l'appareil qui exécute l'application demandant l'autorisation.
user_code string Valeur sensible à la casse qui indique à Google les accès demandés par l'application. Votre interface utilisateur demandera à l'utilisateur de saisir cette valeur sur un autre appareil doté de fonctionnalités de saisie plus riches.
verification_url string URL vers laquelle l'utilisateur doit accéder sur un autre appareil pour saisir le user_code et accorder ou refuser l'accès à votre application.
expires_in integer Durée de validité, en secondes, de device_code et user_code.
interval integer Durée d'attente, en secondes, entre les requêtes d'interrogation de votre appareil.

Point de terminaison de révocation

Le point de terminaison de révocation permet à votre application de révoquer un jeton d'accès ou un jeton d'actualisation.

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

Méthode de requête acceptée : POST

Paramètres de requête

Paramètre Type Obligatoire Description
token string Obligatoire Jeton d'accès ou d'actualisation que vous souhaitez révoquer.

Corps de la réponse

Si la révocation aboutit, la réponse est un code HTTP 200 OK vide. Si la révocation échoue, une réponse d'erreur est renvoyée dans un objet JSON.

Champ Type Description
error string Code d'erreur si la requête a échoué.
error_description string Description de l'erreur si la requête a échoué.

Le tableau suivant décrit les codes d'erreur potentiels :

Erreur Description
invalid_token Le jeton fourni dans la requête a déjà expiré ou a déjà été révoqué.
invalid_request La requête ne contient pas un paramètre obligatoire, inclut une valeur de paramètre non valide ou est incorrectement formulée.

Point de terminaison UserInfo

Le point de terminaison UserInfo renvoie des informations de profil sur l'utilisateur authentifié.

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

Méthodes de requête acceptées : GET, POST

En-têtes de requête

En-tête Description
Authorization Obligatoire. Doit être défini sur Bearer: access_token.

Corps de la réponse

Les champs de réponse sont renvoyés dans un objet JSON dans le corps de la réponse HTTP à la requête GET ou POST de l'utilisateur à https://openidconnect.googleapis.com/v1/userinfo.

Champ Type Description
sub string Obligatoire. Identifiant unique de l'utilisateur parmi tous les comptes Google. Il n'est jamais réutilisé. Chaîne sensible à la casse ne dépassant pas 255 caractères.
name string Nom complet de l'utilisateur, sous une forme affichable.
given_name string Prénom(s) de l'utilisateur.
family_name string Nom(s) de famille de l'utilisateur.
picture string URL de la photo de profil de l'utilisateur.
email string Adresse e-mail de l'utilisateur.
email_verified boolean Indique si l'adresse e-mail de l'utilisateur a été validée.
hd string Domaine hébergé associé à l'organisation Google Workspace ou Cloud de l'utilisateur.

Point de terminaison Tokeninfo

Le point de terminaison tokeninfo est une implémentation spécifique à Google utilisée pour valider un jeton d'identité à des fins de débogage.

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

Méthodes de requête acceptées : GET, POST

Paramètres de requête

Paramètre Type Obligatoire Description
id_token string Obligatoire Jeton d'identité à valider.

Corps de la réponse

Les champs de réponse sont renvoyés dans un objet JSON dans le corps de la réponse HTTP à la requête GET ou POST de l'utilisateur à https://oauth2.googleapis.com/tokeninfo.

Champ Type Description
iss string Identifiant de l'émetteur. Toujours https://accounts.google.com.
sub string Identifiant unique de l'utilisateur parmi tous les comptes Google. Il n'est jamais réutilisé.
aud string Audience à laquelle le jeton d'identité est destiné. Il s'agit de l'identifiant client de votre application, obtenu à partir de la console Google Cloud.
iat integer Heure à laquelle le jeton JWT a été émis. Représenté par le nombre de secondes écoulées depuis le 1er janvier 1970 à 00:00:00 UTC.
exp integer Heure d'expiration à partir de laquelle le jeton d'identité ne doit plus être accepté pour le traitement. Représenté par le nombre de secondes écoulées depuis le 1er janvier 1970 à 00:00:00 UTC.
email string Adresse e-mail de l'utilisateur.
email_verified string Indique si l'adresse e-mail de l'utilisateur a été validée. La valeur est une chaîne "true" ou "false".
access_type string Type d'accès demandé dans la demande d'autorisation d'origine.
azp string Identifiant client du présentateur autorisé, obtenu à partir de la console Google Cloud.
scope string Liste des scopes accordés au jeton, séparés par des espaces.
alg string Algorithme utilisé pour signer le jeton d'identité.
kid string ID de clé utilisé pour signer le jeton d'identité.
typ string Type de jeton. Toujours JWT.