- Flux des identifiants client : l’agent est le sujet. Son identité apparaît dans la demande personnalisée
subde premier niveau. - Flux de connexion standard : l’utilisateur est le sujet. L’identité de l’agent apparaît dans une demande personnalisée
actà un seul niveau. - Échange de jetons On-Behalf-Of (OBO) : l’utilisateur demeure le sujet. L’identité de l’agent apparaît dans la demande personnalisée
act, accompagnée d’une demande personnaliséeactimbriquée qui indique le client d’origine.
Auth0 ne prend pas en charge le type d’autorisation
jwt_bearer pour les clients liés à un agent.sub_profile et client_profile afin d’identifier explicitement le type d’entité à chaque position du jeton.
Demandes personnalisées du sujet de l’agent
Les demandes personnaliséessub_profile et client_profile précisent le type d’entité dans les jetons émis par les clients liés à un agent :
Vous devez configurer votre serveur de ressources pour qu’il reçoive les demandes personnalisées
sub_profile et client_profile dans les jetons émis. Partout où l’identifiant d’un agent apparaît dans une demande personnalisée (sub de premier niveau ou act.sub), il s’agit de l’external_agent_id de l’agent si celui-ci a été défini à la création; sinon, il s’agit de l’agent_id.
Configurer le serveur de ressources pour recevoir les demandes de sujet de l’agent
Pour recevoir les demandessub_profile et client_profile, définissez agent_subject_claims: 'auth0-v1' sur le serveur de ressources cible. Cette option doit être activée individuellement pour chaque serveur de ressources.
La demande personnalisée
sub_profile introduit un type d’entité formel dans le jeton. Les services qui reçoivent des jetons ne devraient pas présumer que sub_profile vaudra toujours user. Si sub_profile est absent (l’option n’est pas activée pour le serveur de ressources), le comportement actuel demeure inchangé.Vérifiez la façon dont sub est analysé dans les services en aval avant d’activer l’option. Les services qui valident ou analysent le format de la demande personnalisée sub devront peut-être être mis à jour pour traiter ai_agent comme un type d’entité valide dans le cas des octrois par information d’identification du client.Flux de connexion standard
Un client lié à un agent peut exécuter un flux de connexion standard à l’aide de l’octroi par code d’autorisation, implicite, CIBA, par appareil, MFA, par mot de passe, par clé d’identification ou par jeton d’actualisation. Le sujet demeure l’utilisateur. L’identité de l’agent n’apparaît pas dans la demande personnaliséesub de premier niveau. À la place, une demande personnalisée act à un seul niveau est ajoutée afin que l’agent puisse être identifié dans le jeton.
Dans l’exemple suivant, un client lié à un agent exécute un flux de connexion standard et émet un jeton comportant les demandes de sujet d’agent suivantes :
sub: l’identifiant de l’utilisateursub_profile:userclient_profile:ai_agent, qui indique que le client est lié à un agentact: une demande d’acteur à un seul niveau qui identifie l’agent ("sub": "agt_1a2b3c", "sub_profile": "ai_agent")
Flux des identifiants client
Un client de communication entre machines (M2M) lié à un agent exécute un flux des identifiants client. L’agent est le sujet et s’authentifie en son propre nom; aucun utilisateur n’intervient. Dans l’exemple suivant, un client M2M lié à un agent exécute un flux des identifiants client et émet un jeton comportant les demandes de sujet d’agent suivantes :sub: l’external_agent_idde l’agent s’il en a été défini un à la création, sinon l’agent_idsub_profile:ai_agentclient_profile:service ai_agent, représentant le client M2M lié à l’agent
Échange de jetons On-Behalf-Of (OBO)
Dans l’échange de jetons OBO, un utilisateur s’authentifie et reçoit un jeton d’accès dont le public est le serveur de ressources de l’agent. Le client lié à l’agent échange ensuite ce jeton contre un jeton délégué au moyen de l’échange de jetons On-Behalf-Of. L’utilisateur demeure le sujet tout au long du processus. L’agent est identifié comme l’acteur dans la demande personnaliséeact.
Avant l’échange de jetons, l’utilisateur s’authentifie au moyen d’une application de navigateur et reçoit un jeton d’accès :
sub: l’identifiant de l’utilisateursub_profile:userclient_profile: identifie le client d’origine comme unbrowser_appaud: le serveur de ressources de l’agent
sub: l’identifiant de l’utilisateur (inchangé)sub_profile:user(inchangé)client_profile:service ai_agent, qui représente le client lié à l’agentaud: le nouveau serveur de ressourcesact: l’acteur immédiat est l’agent, avec unactimbriqué qui indique le client d’origine ayant amorcé le flux. La profondeur maximale de délégation est de 5 sauts, soit 4 niveaux deactimbriqués.
Les jetons d’actualisation ne sont pas pris en charge pour l’échange de jetons OBO. Pour en apprendre davantage sur la configuration et les limites, faites la lecture de Échange de jetons On-Behalf-Of.
Prochaines étapes
- Ajoutez du contexte d’agent aux jetons d’accès à l’aide des Actions
- Interrogez l’ID de l’agent dans les journaux du locataire pour assurer l’attribution et la traçabilité de l’identité de l’agent