Skip to main content
Les claims des JSON web tokens (JWT) sont des informations déclarées sur un sujet. Par exemple, un jeton d’identité (qui est toujours un ) peut contenir un claim appelé name qui indique que le nom de l’utilisateur qui s’authentifie est “John Doe”. Dans un JWT, un claim se présente sous la forme d’une paire nom/valeur où le nom est toujours une chaîne et la valeur peut être n’importe quelle valeur JSON. En général, lorsque nous parlons d’un claim dans le contexte d’un JWT, nous faisons référence au nom (ou à la clé). Par exemple, l’objet JSON suivant contient trois claims (sub, name, admin) :
Pour en savoir plus sur les claims standard d’OpenID Connect (OIDC), consultez Scopes d’OpenID Connect et Claims standard d’OpenID Connect.
Il existe deux types de claims JWT :
  • Enregistrées : des claims standard enregistrées auprès de l’Internet Assigned Numbers Authority (IANA) et définies par la spécification JWT pour assurer l’interopérabilité avec des applications tierces ou externes. Les claims standard OIDC sont des claims réservées.
  • Personnalisées : elles sont composées de claims publiques ou privées non enregistrées. Les claims publiques résistent aux collisions, tandis que les claims privées peuvent être sujettes à des collisions.

Claims enregistrées

La spécification JWT définit sept claims réservées qui ne sont pas obligatoires, mais qui sont recommandées pour assurer l’interopérabilité avec des applications tierces. Les voici :
  • iss (émetteur) : Émetteur du JWT
  • sub (sujet) : Sujet du JWT (l’utilisateur)
  • aud () : Destinataire visé par le JWT
  • exp (heure d’expiration) : Heure après laquelle le JWT expire
  • nbf (heure de début de validité) : Heure avant laquelle le JWT ne doit pas être accepté pour traitement
  • iat (heure d’émission) : Heure à laquelle le JWT a été émis; peut être utilisée pour déterminer l’âge du JWT
  • jti (ID du JWT) : Identificateur unique; peut être utilisé pour empêcher la réutilisation du JWT (permet qu’un jeton ne soit utilisé qu’une seule fois)
Vous pouvez consulter la liste complète des claims enregistrées dans le registre des claims JSON Web Token de l’IANA.

Claims personnalisées

Vous pouvez définir vos propres claims personnalisées et les ajouter à un jeton à l’aide d’Actions. Voici quelques exemples :
  • Ajoutez l’adresse de courriel d’un utilisateur à un et utilisez-la pour identifier l’utilisateur de manière unique.
  • Ajoutez des renseignements personnalisés stockés dans un profil d’utilisateur Auth0 à un .
Tant que l’Action est configurée, les claims personnalisées qu’elle ajoute apparaîtront dans les nouveaux jetons émis lorsqu’un jeton d’actualisation est utilisé. Pour voir un exemple montrant comment ajouter des claims personnalisées à un jeton, consultez Exemples de cas d’utilisation : Scopes et claims.

Claims publics

Vous pouvez créer des claims personnalisés destinés à un usage public, qui peuvent contenir des renseignements génériques comme le nom et le courriel. Si vous créez des claims publics, vous devez soit les enregistrer, soit utiliser des noms résistants aux collisions grâce à un espace de noms, et prendre des précautions raisonnables pour vous assurer que vous contrôlez bien l’espace de noms utilisé. Dans le registre IANA des claims JSON Web Token, vous trouverez quelques exemples de claims publics enregistrés par Connect (OIDC) :
  • auth_time
  • acr
  • nonce

Claims privées

Vous pouvez créer des claims personnalisées privées pour partager des renseignements propres à votre application. Par exemple, alors qu’une claim publique peut contenir des renseignements généraux comme le nom et le courriel, les claims privées contiennent des renseignements plus précis, comme l’identifiant d’employé et le nom du service.

Restrictions d’Auth0

Auth0 applique les restrictions générales suivantes aux claims personnalisées :
  • le payload des claims personnalisées est limité à un maximum de 100 KB
  • certaines claims standard enregistrées d’OIDC, ainsi que d’autres claims utilisées en interne par Auth0, ne peuvent pas être personnalisées ni modifiées
  • les jetons d’accès associés à une audience d’API Auth0, à l’exception du point de terminaison /userinfo, ne peuvent pas inclure de claims personnalisées privées non namespacées
  • seules les claims de profil utilisateur OIDC spécifiées peuvent être ajoutées aux jetons d’accès
Pour en savoir plus sur les claims personnalisées, consultez Créer des claims personnalisées.

En savoir plus