Skip to main content
Les claims des JSON Web Tokens (JWT) correspondent à des renseignements déclarés au sujet d’un sujet. Par exemple, un jeton ID (qui est toujours un ) peut contenir un claim appelé name, indiquant 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 de caractères et la valeur peut être ê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 à son nom (ou à sa 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 OpenID Connect Scopes et Claims standard d’OpenID Connect.
Il existe deux types de claims JWT :
  • enregistré : des claims standard enregistrés auprès de l’Internet Assigned Numbers Authority (IANA) et définis par la spécification JWT afin d’assurer l’interopérabilité avec des applications tierces, ou externes. Les claims standard d’OIDC sont des claims réservés.
  • personnalisé : comprend des claims publics ou privés non enregistrés. Les claims publics sont résistants aux collisions, tandis que les claims privés peuvent entraîner 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 afin de permettre l’interopérabilité avec les applications tierces. Les voici :
  • iss (issuer) : Émetteur du JWT
  • sub (subject) : Sujet du JWT (l’utilisateur)
  • aud () : Destinataire auquel le JWT est destiné
  • exp (date d’expiration) : Moment après lequel le JWT expire
  • nbf (date de début de validité) : Moment avant lequel le JWT ne doit pas être accepté pour traitement
  • iat (date d’émission) : Moment où le JWT a été émis; peut servir à déterminer l’ancienneté du JWT
  • jti (JWT ID) : Identifiant unique; peut servir à empêcher la réutilisation du JWT (ce qui 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, que vous contrôlez, et les ajouter à un jeton à l’aide d’Actions. Voici quelques exemples :
  • Ajoutez l’adresse courriel d’un utilisateur à un et utilisez-la pour identifier l’utilisateur de façon unique.
  • Ajoutez des renseignements personnalisés stockés dans un profil utilisateur Auth0 à un .
Tant que l’Action est en place, les claims personnalisées qu’elle ajoute apparaîtront dans les nouveaux jetons émis lors de l’utilisation d’un jeton d’actualisation. Pour voir un exemple de la façon d’ajouter des claims personnalisées à un jeton, consultez Exemples de cas d’utilisation : portées et revendications.

Claims publics

Vous pouvez créer des claims personnalisés destinés au public, qui peuvent contenir des renseignements généraux comme le nom et l’adresse courriel. Si vous créez des claims publics, vous devez soit les enregistrer, soit utiliser, au moyen d’un espace de noms, des noms résistants aux collisions, et prendre des précautions raisonnables pour vous assurer de contrôler l’espace de noms que vous utilisez. Dans le registre des claims JSON Web Token de l’IANA, vous pouvez voir quelques exemples de claims publics enregistrés par Connect (OIDC) :
  • auth_time
  • acr
  • nonce

Claims privés

Vous pouvez créer des claims personnalisés privés pour transmettre des renseignements propres à votre application. Par exemple, alors qu’un claim public peut contenir des renseignements généraux comme le nom et l’adresse courriel, les claims privés peuvent être plus précis, comme l’ID d’employé et le nom du département.

Restrictions d’Auth0

Auth0 applique les restrictions générales suivantes aux claims personnalisées :
  • la charge utile des claims personnalisées est limitée à 100 KB maximum
  • un sous-ensemble des claims standard enregistrées d’OIDC et d’autres claims utilisées en interne par Auth0 ne peuvent pas être personnalisées ni modifiées
  • les jetons d’accès avec une audience d’Auth0 API, à l’exception du endpoint /userinfo, ne peuvent pas contenir 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 Create Custom Claims.

En savoir plus