3 min de lecture

Autoriser les agents IA avec Nango

Comment autoriser les agents IA avec un magasin de credentials

IA Authentification Magasin de credentials
Autoriser les agents IA avec Nango

Introduction

L’un des plus grands défis dans la construction d’agents IA est de les autoriser à accéder aux services externes. De nombreuses tâches routinières mais fastidieuses gérées par les humains nécessitent souvent plusieurs autorisations auprès de différents fournisseurs.

Par exemple, si vous voulez qu’un agent émette automatiquement des remboursements à vos clients, il pourrait avoir besoin de l’autorisation pour :

  • Accéder au compte bancaire de votre entreprise (pour transférer des fonds)
  • Se connecter à votre fournisseur d’email (pour envoyer une confirmation de remboursement)
  • Se connecter à votre service SMS (pour envoyer une notification de remboursement)
  • Mettre à jour votre CRM (pour ajuster le statut du client)
  • Mettre à jour votre logiciel de comptabilité (pour enregistrer la transaction)
  • Mettre à jour votre système d’inventaire (pour ajuster les niveaux de stock)
  • Mettre à jour votre logiciel d’expédition (pour gérer la livraison)

Ce ne sont que quelques exemples. Chacun de ces services peut être fourni par différents vendeurs, et l’agent doit être autorisé à y accéder tous. Pour compliquer les choses, chaque fournisseur a son propre mécanisme d’authentification.

C’est exactement là que Nango intervient.

Comment autoriser les agents IA avec Nango

Nango simplifie l’autorisation grâce à deux fonctionnalités principales :

  1. Un SDK frontend qui permet aux utilisateurs d’accorder de manière sécurisée aux agents la permission d’agir en leur nom.
  2. Un service backend qui récupère et gère ces credentials pour que les agents puissent effectuer leurs tâches de manière transparente.

Exemple : Intégration Confluence

Parcourons un exemple d’intégration Confluence.

1. Créer une application Confluence

Allez sur la page des applications Atlassian et créez une nouvelle application :

Page des applications Atlassian

2. Assigner les permissions requises

Puisque nous testerons l’intégration en créant une page Confluence, l’application a besoin des scopes appropriés :

Page des applications Atlassian

3. Configurer l’URL de callback Nango

Page des applications Atlassian

4. Copier l’ID client et le secret client

Vous aurez besoin de ces valeurs pour que Nango authentifie les utilisateurs :

Page des applications Atlassian

5. Configurer l’intégration Nango

Ouvrez l’onglet intégrations Nango et cliquez sur + Configurer une nouvelle intégration :

Intégration Nango

Sélectionnez Confluence :

Intégration Nango

6. Configurer l’intégration

Entrez l’ID client et le secret client de l’application Confluence dans Nango. Assurez-vous que les scopes correspondent à ceux configurés à l’étape 2.

Intégration Nango

💡 C’est aussi là que l’URL de callback de l’étape 3 entre en jeu.

7. Connecter un utilisateur avec le SDK frontend Nango

Le SDK frontend peut être intégré dans votre propre application, mais Nango fournit aussi un flux de test intégré.

Cliquez sur Ajouter une connexion de testAutoriser :

SDK frontend Nango

Authentifiez-vous dans la popup :

SDK frontend Nango

Une nouvelle connexion sera créée :

SDK frontend Nango

Cliquer sur la connexion révèle le token Atlassian, que Nango actualise automatiquement :

SDK frontend Nango

Notez l’ID de connexion et l’ID Cloud pour l’étape suivante.

8. Tester l’intégration

Avec les détails de connexion, vous pouvez maintenant authentifier un agent (par exemple, guillaume.blancet@{domain}.com) pour agir dans Confluence.

Vous pourriez utiliser le token d’accès brut ($CONFLUENCE_ACCESS_TOKEN) pour créer une page :

curl -X POST \
  "https://api.atlassian.com/ex/confluence/{CLOUD_ID}/wiki/api/v2/pages" \
  -H "Authorization: Bearer $CONFLUENCE_ACCESS_TOKEN" \
  -H "Accept: application/json" \
  -H "Content-Type: application/json" \
  -d '{
        "spaceId": "{SPACE_ID}",
        "title": "Hello World",
        "status": "draft",
        "body": {
            "representation": "storage",
            "value": "<p>Page créée depuis Nango</p>"
        }
    }'

Mais les tokens expirent rapidement. L’approche recommandée est d’utiliser le service backend Nango, qui gère les actualisations automatiquement :

curl -X POST -H 'Content-Type: application/json' \
-H 'Authorization: Bearer $NANGO_SECRET' \
-H 'Provider-Config-Key: confluence' \
-H 'Connection-Id: $CONNECTION_ID' \
-d '{
        "spaceId": "{SPACE_ID}",
        "title": "Hello World",
        "status": "draft",
        "body": {
            "representation": "storage",
            "value": "<p>Page créée depuis Nango</p>"
        }
    }' \
'https://api.nango.dev/proxy/ex/confluence/{CLOUD_ID}/wiki/api/v2/pages'

Remarquez que l’endpoint est le même, mais Nango standardise l’authentification pour tous les fournisseurs en utilisant :

  • $NANGO_SECRET (depuis vos paramètres d’environnement Nango)
  • $CONNECTION_ID
  • Le nom de l’intégration du fournisseur

Cela vous donne une façon cohérente d’interroger n’importe quel fournisseur.

Paramètres d&#x27;environnement Nango


Conclusion

Confluence n’est qu’un exemple—Nango supporte 400+ intégrations. Avec Nango, vous n’avez pas besoin de vous soucier du mécanisme d’authentification de chaque fournisseur. Au lieu de cela, vous obtenez :

  • Un magasin de credentials unifié pour tous vos agents
  • Des flux d’autorisation cohérents entre les fournisseurs
  • Des actualisations automatiques de tokens

Cela rend beaucoup plus facile la construction d’agents autonomes qui peuvent effectuer de vraies tâches sans intervention humaine.


Références