La disponibilité varie selon le plan Auth0
Votre plan Auth0 ou votre accord personnalisé ont un impact sur la disponibilité de cette fonctionnalité. Pour en savoir plus, lisez Tarification.
name qui affirme que le nom de l’utilisateur qui s’authentifie est «Pierre Untel».
Il existe deux types de demandes JWT :
- Enregistrée : Demandes définies par la spécification JWT pour assurer l’interopérabilité avec les applications tierces ou externes. Les demandes standard OpenID Connect (OIDC) sont des demandes réservées.
- Personnalisée : Demandes que vous définissez vous-même. Il peut s’agir d’autorisations publiques non enregistrées et résistantes aux collisions ou d’autorisations privées non enregistrées et non publiques sujettes aux collisions. Nommez ces demandes avec soin, par exemple au moyen de l’espace de nommage, afin d’éviter toute collision avec des demandes réservées ou d’autres demandes personnalisées. Il peut être difficile de traiter deux demandes d’autorisation portant le même nom et contenant des informations différentes.
Authentifier les utilisateurs par l’intermédiaire d’une organization
Pour authentifier un utilisateur par l’intermédiaire d’une organization, un paramètreorganization est ajouté à un appel au point de terminaison /authorize. Des exemples de jetons renvoyés lorsqu’un utilisateur se connecte par l’intermédiaire d’une organization sont présentés ci-dessous.
Par défaut, les jetons d’accessibilité et d’ID n’incluent que des ID d’organisation. Cependant, vous pouvez configurer votre locataire pour permettre l’utilisation de noms d’organisation dans la Authentication API. Lorsqu’ils sont configurés, les jetons d’accès et d’ID contiennent tous deux les demandes
org_id et org_name. Pour en savoir plus, consultez Utiliser des noms d’organisation dans la Authentication API.Jeton d’ID
Dans l’exemple suivant, notez quehttps://marketplace/roles et https://namespace.exampleco.com/ sont des demandes personnalisées qui ont été ajoutées au jeton, tandis que les autres demandes incluses sont standard.
Jeton d’accès
Accès de communication entre machines à une organisation
Dans les cas de communication entre machines, un paramètreorganization est ajouté à la demande Client Credentials au point de terminaison /oauth/token afin qu’une application puisse obtenir un jeton d’accès pour elle-même plutôt que pour un utilisateur.
Par défaut, les jetons d’accessibilité et d’ID n’incluent que des ID d’organisation. Cependant, vous pouvez configurer votre locataire pour permettre l’utilisation de noms d’organisation dans la Authentication API. Lorsqu’ils sont configurés, les jetons d’accès et d’ID contiennent tous deux les demandes
org_id et org_name. Pour en savoir plus, consultez Utiliser les noms d’Organisation dans Authentication API.Valider les jetons
Lorsque le paramètreorganization est ajouté à un appel au point de terminaison /authorize ou au point de terminaison /oauth/token, les trousses SDK Auth0 valident automatiquement la demande org_id, qui est renvoyée dans le cadre de tout jeton généré. Toutefois, à des fins de sécurité, une validation supplémentaire doit être effectuée lors de la réception des jetons.
Si vous avez configuré votre locataire pour permettre l’utilisation de noms d’organisation dans la Authentication API, les jetons d’accès et d’ID contiennent tous les deux les demandes
org_id et org_name. S’il existe, validez la demande org_name et org_id pour vous assurer que les valeurs reçues correspondent à une entité de confiance.En général, utiliser des ID d’organisation est une méthode préférable pour la validation des jetons. Cependant, les noms d’organisation peuvent être utilisés s’ils sont plus appropriés pour le cas d’utilisation. Pour comprendre les implications potentielles d’utiliser des noms d’organisation pour valider des jetons, consultez Utiliser des noms d’organisation dans la Authentication API.organization n’a été transmis au point de terminaison /authorize, mais qu’une demande org_id est présente dans le jeton d’ID, votre application doit valider la demande pour s’assurer que la valeur reçue est attendue ou connue et qu’elle correspond à une entité en laquelle votre application a confiance, telle qu’un client payant. Si la demande ne peut être validée, l’application doit considérer le jeton comme non valide.
Pour les API :
Si une demande org_id est présente dans le jeton d’accès, votre API doit valider la demande pour s’assurer que la valeur reçue est attendue ou connue et qu’elle correspond à une entité en laquelle votre application a confiance, telle qu’un client payant. Si la demande ne peut pas être validée, l’API doit considérer le jeton comme non valide.
En particulier :
- La demande
iss(émetteur) doit être vérifiée pour s’assurer que le jeton a été émis par Auth0. - L’affirmation
org_iddoit être vérifiée pour s’assurer qu’il s’agit d’une valeur déjà connue de l’application. Elle pourrait être validée par rapport à une liste connue d’identifiants d’organizations, ou être vérifiée en conjonction avec l’URL de la demande actuelle. Par exemple, le sous-domaine peut indiquer l’organization à utiliser lors de la validation du jeton d’ID.
org_id. Cela garantit que seules les informations relatives à une organisation donnée peuvent être consultées ou modifiées lorsque la valeur org_id correspondant à cette organisation est reçue dans le jeton d’accès.