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. |