name
qui confirme que le nom de l’utilisateur s’authentifiant est «Pierre Untel». Dans un JWT, une demande se présente sous la forme d’une paire nom/valeur où le nom correspond obligatoirement à une chaîne de caractères et la valeur à n’importe quelle valeur JSON. En règle générale, quand on parle d’une demande dans le contexte d’un JWT, on se réfère au nom (ou à la clé). Par exemple, l’objet JSON suivant contient trois demandes (sub
, name
, admin
) :
Pour en savoir plus sur les demandes standard OpenID Connect (OIDC), consultez Permissions OpenID Connect et Demandes standard OpenID Connect.
- Enregistrée : demande standard enregistrée auprès de la Internet Assigned Numbers Authority (IANA) et définie par la spécification JWT pour assurer l’interopérabilité entre applications tierces ou externes. Les demandes OIDC standard sont des demandes réservées.
- Personnalisée : demandes publiques ou privées non enregistrées. Les demandes publiques sont résistantes aux collisions, tandis que les demandes privées sont sujettes à d’éventuelles collisions.
Demandes enregistrées
La spécification JWT définit sept demandes réservées qui ne sont pas obligatoires, mais qui sont recommandées pour permettre l’interopérabilité avec des applications tierces. Il s’agit de :iss
(issuer) : Émetteur du JWTsub
(subject) : Sujet du JWT (l’utilisateur)aud
() : Destinataire auquel le JWT est destinéexp
(expiration time) : Délai avant l’expiration du JWTnbf
(not before time) : Délai avant l’acceptation du JWT pour traitementiat
(issued at time) : Heure à laquelle le JWT a été émis; peut être utilisé pour déterminer l’âge du JWTjti
(JWT ID) : Identifiant unique; peut être utilisé pour empêcher que le JWT soit rejoué (un jeton ne peut être utilisé qu’une seule fois)
Demandes personnalisées
Vous pouvez définir vos propres demandes personnalisées, que vous contrôlez, et les ajouter à un jeton à l’aide d’actions. Voici quelques exemples :- Ajoutez l’adresse courriel d’un utilisateur à un jeton d’accès et utilisez-la pour identifier l’utilisateur de manière unique
- Ajoutez des informations personnalisées stockées dans un profil utilisateur Auth0 à un jeton d’ID
Demandes publiques
Vous pouvez créer des demandes personnalisées destinées au public, qui peuvent contenir des informations génériques comme le nom et l’adresse de courriel. Si vous créez des demandes publiques, vous devez les enregistrer ou utiliser des noms résistants aux collisions par le biais de l’espace de noms et prendre toute précaution utile pour vous assurer que vous contrôlez l’espace de noms que vous utilisez. Dans le Registre des demandes de jetons Web JSON de l’IANA, vous pouvez voir quelques exemples de demandes publiques enregistrées par Connect (OIDC) :auth_time
acr
nonce
Demandes privées
Vous pouvez créer des demandes personnalisées privées pour partager des informations spécifiques à votre application. Par exemple, une demande publique peut contenir des informations génériques (nom et adresse de courriel), tandis que les demandes privées sont plus spécifiques (ID de l’employé et nom du service).Restrictions Auth0
Auth0 applique les restrictions générales relatives aux demandes personnalisées :- la charge utile des demandes personnalisées est fixée à un maximum de 100 Ko;
- un sous-ensemble d’OIDC et d’autres demandes standard enregistrées ou des demandes utilisées en interne par Auth0 ne peuvent pas être personnalisées ou modifiées;
- les jetons d’accès avec une audience Auth0 API, à l’exception du point de terminaison
/userinfo
, ne peuvent pas avoir de demandes personnalisées privées et sans espace de noms; - seules les demandes spécifiées du profil utilisateur de l’OIDC peuvent être ajoutées aux jetons d’accès.