Skip to main content
Intégrez Token Vault à vos applications sans migrer votre magasin d’identité d’utilisateurs vers Auth0. L’authentification principale reste confiée à votre fournisseur d’identité (IdP) d’utilisateurs, qu’il s’agisse d’une solution personnalisée ou tierce, d’une base de données locale ou d’une solution B2C/B2B. Auth0, quant à lui, stocke, renouvelle et distribue de façon sécurisée les jetons d’accès OAuth tiers destinés aux flux de production d’IA autonomes. Grâce à Custom Token Exchange (RFC 8693), vous échangez un jeton émis par votre IdP d’utilisateurs contre des jetons Auth0, ce qui déclenche la fourniture juste-à-temps (JIT) d’un profil fantôme léger. Vous associez ensuite des comptes de fournisseurs tiers à ce profil au moyen du flux Connected Accounts. Votre système dorsal ou vos agents peuvent alors récupérer à la demande des jetons en aval de courte durée, sans jamais manipuler directement d’informations d’identification de longue durée.
L’utilisation conjointe de Custom Token Exchange et de Token Vault constitue une solution provisoire pour mettre en place des agents d’IA sans migrer les magasins d’utilisateurs. Auth0 prendra bientôt en charge une solution native reposant sur ID-JAG (Cross App Access), qui normalisera l’autorisation entre applications sans exiger de développement personnalisé pour l’échange de jetons.

Aperçu de l’architecture

Informations requises

  • Locataire Auth0 : un locataire actif, avec Organizations activé si vous utilisez des structures multilocataires ou B2B.
  • Capacités de l’IdP des utilisateurs : un fournisseur d’identité principal capable d’émettre des jetons d’ID OIDC signés ou des assertions JWT, reposant sur un terminal JWKS public ou une clé statique pour la vérification des signatures.
  • Informations d’identification de développeur tierces : des informations d’identification client actives (ID client et secret client) pour chaque fournisseur en aval auquel vos agents d’IA doivent accéder, comme GitHub, Google Workspace ou Salesforce.
  • Accès administrateur de locataire : les autorisations nécessaires dans votre locataire Auth0 pour créer des applications clientes, configurer des connexions OAuth et déployer des Actions Custom Token Exchange.

Étape 1 : Configuration et enregistrement de l’application

Enregistrer et configurer votre application

Accédez à Applications > Applications et créez votre application. Configurez-la en tant qu’application de première partie, confidentielle et conforme à OIDC, et activez Custom Token Exchange :
  • Désactivez Allow Refresh Token Rotation pour l’application. Comme les récupérations répétées de jetons reposent sur la réutilisation du même jeton de sujet, la rotation compromettrait l’accès en aval.
  • Sous Advanced Settings > Grant Types, assurez-vous que Refresh Token et Token Vault sont sélectionnés.
  • Sous APIs > Auth0 My Account API, accordez à l’application l’accès à l’API My Account (obtenu au moyen d’un jeton d’actualisation multiressource) avec les permissions suivantes :
    • read:me:connected_accounts
    • create:me:connected_accounts
    • delete:me:connected_accounts
Ensuite, sous Applications > APIs, sélectionnez Allow Skipping User Consent pour l’API cible.

Enregistrer les connexions OAuth en aval

Pour chaque fournisseur tiers auquel vos agents d’IA doivent accéder :
  1. Accédez à Authentication > Social ou à Authentication > Enterprise.
  2. Ajoutez la connexion à l’aide des informations d’identification obtenues sur le portail des développeurs du fournisseur.
  3. Sous Purpose, activez Connected Accounts for Token Vault pour la connexion.
  4. Sous Permissions, sélectionnez Offline Access afin de permettre à votre application client d’obtenir un jeton d’actualisation auprès du fournisseur externe.
  5. Dans l’onglet Applications de la connexion, activez votre application enregistrée.
Pour en savoir plus, consultez Connected Accounts for Token Vault.

Étape 2 : Configurer l’Action Custom Token Exchange

Créez une nouvelle Action sous Actions > Library > Custom à l’aide du déclencheur Custom Token Exchange (onExecuteCustomTokenExchange). Cette Action valide le jeton émis par votre IdP d’utilisateurs, crée un profil utilisateur fantôme dans Auth0 et, au besoin, limite la portée du jeton d’accès à une Organization Auth0.
Ensuite, créez un profil Custom Token Exchange à l’aide de la Management API, en associant un subject_token_type personnalisé à cette Action. L’URN ne doit pas utiliser d’espace de noms réservé (urn:ietf, urn:auth0, urn:okta, etc.) :

Étape 3 : Échanger votre jeton IdP contre un jeton d’accès à l’API Auth0 My Account

Envoyez une requête d’échange de jeton (RFC 8693) à partir du système dorsal de votre application afin d’obtenir un jeton d’accès à l’API Auth0 My Account limité à l’Organization de l’utilisateur.
La réponse contient un jeton d’accès pour l’API My Account et un jeton d’actualisation. Utilisez le flux Connected Accounts pour autoriser des fournisseurs OAuth tiers, comme GitHub, Google Workspace ou Salesforce, sans faire d’Auth0 la méthode de connexion principale de l’utilisateur.

Étape 5 : Récupérer les jetons tiers pour les agents d’IA

Les agents récupèrent les jetons d’accès en aval non expirés directement depuis Token Vault grâce à l’échange de jeton d’actualisation.

Étape 6 : Exécuter les appels d’outils de l’agent d’IA

Transmettez le jeton du fournisseur récupéré aux SDK tiers afin d’effectuer des actions d’API au nom de l’utilisateur.