Permissions OpenID Connect

Ce document traite des permissions incluses dans le protocole d’authentification OpenID Connect (OIDC). Pour plus d’informations sur l’OIDC, veuillez consulter Protocole OpenID Connect.

Les permissions OpenID Connect (OIDC) sont utilisées par une application lors de l’authentification pour autoriser l’accès aux données d’un utilisateur, comme « name » et « picture ». Chaque permission renvoie un ensemble d’attributs de l’utilisateur, appelés demandes. Les permissions qu’une application doit demander dépendent des attributs de l’utilisateur dont l’application a besoin. Une fois que l’utilisateur a autorisé les champs d’application demandés, les demandes sont renvoyées sous la forme d’un jeton d’ID et sont également disponibles par l’intermédiaire du point de terminaison /userinfo.

Par exemple, supposons que vous ayez créé une application Web ordinaire, que vous l’ayez enregistrée auprès d’Auth0 et que vous l’ayez configurée pour permettre à un utilisateur de se connecter à l’aide d’un nom d’utilisateur et d’un mot de passe. Lorsqu’un utilisateur se connecte à votre application, vous souhaitez générer et envoyer automatiquement un courriel de bienvenue personnalisé, comprenant le nom de l’utilisateur (« name »).

  1. Un utilisateur clique sur Se connecter dans votre application.

  2. Votre application redirige l’utilisateur vers le serveur d’autorisation Auth0 (/authorize), en incluant les permissions suivantes :

    • openid (obligatoire pour indiquer que l’application a l’intention d’utiliser OIDC pour vérifier l’identité de l’utilisateur)

    • profile (afin de pouvoir personnaliser l’adresse courriel avec le nom de l’utilisateur)

    • email (pour savoir où envoyer le courriel de bienvenue)

  3. Votre Auth0 Authorization Server (Serveur d’autorisation Auth0) redirige l’utilisateur vers l’invite de connexion.

  4. L’utilisateur s’authentifie et voit apparaître une page de consentement énumérant les permissions qu’Auth0 accordera à votre application, notamment l’accès à ses informations de profil et à son adresse courriel.

  5. L’utilisateur accepte et autorise votre application à avoir ce niveau d’accès à ses informations stockées par Auth0.

  6. Votre application a maintenant accès aux informations du profil de l’utilisateur et à son adresse électronique.

Demandes standard

Les demandes standard sont destinées à fournir à une application des informations sur l’utilisateur, telles que le nom, le courriel et la photo, et sont prédéfinies pour le protocole OIDC. Ces demandes sont renvoyées sous la forme d’un jeton d’ID et sont également disponibles par l’intermédiaire du point de terminaison /userinfo.

Vous pouvez également créer des demandes personnalisées, c’est-à-dire des demandes que vous définissez, contrôlez et ajoutez à un jeton en utilisant Auth0 Actions. Pour en savoir plus, veuillez consulter Demandes jetons Web JSON.

La permission de base (et obligatoire) d’OIDC est openid, indiquant qu’une application a l’intention d’utiliser le protocole OIDC pour vérifier l’identité d’un utilisateur. De plus, une application peut demander des permissions supplémentaires en énumérant les noms des permissions demandées dans le paramètre scope, séparées par des espaces.

Les demandes standard incluses dans les permissions les plus couramment utilisées sont énumérées ci-dessous, mais pour obtenir une liste complète d’applications standard disponibles, veuillez consulter les spécifications OIDC : Demandes standard sur openid.net. Pour une liste complète des permissions, veuillez consulter les spécifications OIDC : Requête de demandes en utilisant des valeurs de permission sur openid.net.

Permission Demandes
openid (obligatoire) Renvoie la demande sub, qui identifie de manière unique l’utilisateur. Dans un jeton d’ID, les demandes iss, aud, exp, iat, et at_hash seront également présentes. Pour en savoir plus sur les demandes du jeton d’ID, veuillez consulter Structure du jeton d’ID.
profile Renvoie les demandes qui représentent les informations de profil de base, notamment name, family_name, given_name, middle_name, nickname, picture, et updated_at.
email Renvoie la demande email, qui contient l’adresse courriel de l’utilisateur, et email_verified, qui est un booléen indiquant si l’adresse courriel a été vérifiée par l’utilisateur.

Pour un exemple illustrant comment effectuer des demandes standard pour votre application, veuillez consulter Exemples de cas d’utilisation : Permissions et demandes.

En savoir plus