Skip to main content
À l’aide de Rich Authorization Requests (RAR), les clients peuvent demander et obtenir des données d’ auprès des , comme les utilisateurs finaux.  Les clients peuvent transmettre des données RAR au point de terminaison Pushed Authorization Request (PAR) dans le cadre du flux du code d’autorisation. Pour en savoir plus, consultez Configure Pushed Authorization Requests. Dans un flux traditionnel, lorsqu’un client demande l’accès à un à l’aide de scopes, le propriétaire de la ressource accorde au client l’accès à ces ressources. Dans une requête d’autorisation enrichie, les clients peuvent transmettre un paramètre authorization_details au point de terminaison /par pour demander des permissions plus granulaires que celles demandées dans les scopes. Cela permet un contrôle plus précis de l’accès aux ressources, tant pour les clients que pour les propriétaires de ressources, et atténue les risques de sécurité associés à une attribution excessive des accès. Comme Auth0 prend uniquement en charge la validation des types authorization_details, vous devez implémenter la validation des objets JSON dans authorization_details. Pour en savoir plus, consultez Configurer Rich Authorization Requests.

Fonctionnement

Dans une requête d’autorisation enrichie, le paramètre authorization_details est un tableau JSON d’objets dont chacun doit inclure un champ type, représenté sous forme de chaîne. Le champ type détermine les champs d’objet personnalisables. Un tableau authorization_details peut contenir plusieurs entrées du même type. Pour en savoir plus sur la façon d’enregistrer les types authorization_details, consultez Configurer Rich Authorization Requests. Auth0 présente les authorization_details à l’utilisateur pour qu’il les autorise dans un écran de consentement personnalisé. Pour en savoir plus, consultez Définir l’invite de consentement personnalisée. Vous devez transmettre le paramètre authorization_details au point de terminaison /par, ce qui permet au Auth0 d’effectuer une validation précoce du type. Le point de terminaison /par transmet les requêtes d’autorisation par le canal arrière afin d’éviter que des données sensibles ne soient exposées dans le canal frontal, comme le navigateur. Une fois la requête d’autorisation transmise au point de terminaison /par, l’application redirigera vers le point de terminaison /authorize, puis poursuivra le flux du code d’autorisation. Pour en savoir plus, consultez Flux du code d’autorisation avec PAR. Pour terminer le flux du code d’autorisation, échangez le code d’autorisation au point de terminaison /oauth/token, comme dans l’exemple suivant :
Si la requête réussit, vous devriez recevoir une réponse contenant le et le tableau authorization_details :
Dans le cadre des meilleures pratiques JWT, le client peut utiliser authorization_details pour comprendre l’étendue de l’autorisation qui lui a été accordée sans avoir à inspecter le jeton d’accès. Si l’ demandée est une API qui exige des jetons d’accès JWE, le endpoint /oauth/token renvoie une réponse qui omet tous les champs d’objet de authorization_details, à l’exception de type. Les claims du jeton d’accès ne sont pas modifiés dans la réponse.

Configurer RAR pour le flux du code d’autorisation

Avant de configurer les Rich Authorization Requests pour le flux du code d’autorisation, vous devez : Pour configurer RAR pour le flux du code d’autorisation, vous devez :
  • enregistrer les types authorization_details pour un serveur de ressources.
  • définir l’invite de consentement personnalisée.
Pour en savoir plus, consultez Configurer Rich Authorization Requests.

Accéder à authorization_details dans Actions

Auth0 ne permet pas de mettre à jour RAR à l’aide d’Actions.
Auth0 expose le paramètre authorization_details dans l’Action post-login au moyen de la propriété event.transaction.requested_authorization_details. Vous pouvez utiliser cette propriété dans une Action pour afficher à l’utilisateur les détails de la transaction dans un défi MFA.

Qu’est-ce qui n’est pas pris en charge par Auth0?

Auth0 ne prend pas en charge :
  • La mise à jour de RAR à l’aide d’Actions.
  • La publication de types de RAR pour que les clients puissent les découvrir.
  • La validation des objets RAR au-delà de la vérification de la présence d’une propriété type correspondant aux types autorisés pour l’API. Pour en savoir plus, consultez Configurer RAR.

En savoir plus