View a markdown version of this page

Connectez-vous aux serveurs distants de DevOps l'agent - AWS DevOps Agent

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Connectez-vous aux serveurs distants de DevOps l'agent

AWS DevOps L'agent fournit des serveurs distants dédiés pour les protocoles Model Context Protocol (MCP) et Agent-to-Agent (A2A). Utilisez ces serveurs pour connecter votre IDE, votre CLI ou vos intégrations d'agents personnalisées à un agent Space.

Protocoles pris en charge

  • MCP (Model Context Protocol) — Connectez les clients IDE et CLI tels que Kiro, Claude Code, Cursor et d'autres MCP-compatible outils.

  • A2A (Agent-to-Agent) v1.0 — Connectez des agents autonomes pour la communication agent-agent.

Points de terminaison

Les serveurs distants sont disponibles via une URL régionale :

https://connect.aidevops.{region}.api.aws
Protocole Chemin Method
MCP /mcp POST
A2A /a2a/* POST
Carte d'agent A2A /.well-known/agent-card.json GET

Pour consulter la liste des régions disponibles, consultezRégions prises en charge.

Authentification

Deux méthodes d'authentification sont disponibles pour les points de terminaison MCP et A2A :

  • Jeton d'accès (porteur) : jeton unique limité à un espace d'agent. Configuration la plus simple pour une utilisation individuelle.

  • AWS SigV4 — AWS authentification basée sur les informations d'identification. Prend en charge plusieurs espaces d'agents et s'intègre à la gouvernance des AWS identités existante. Géré automatiquement par mcp-proxy-for-aws, un proxy local qui signe les demandes à l'aide de vos informations d'identification. AWS

Création d'un jeton d'accès

Conditions préalables

  • La fonctionnalité des jetons d'accès doit être activée sur votre espace agent.

  • Vous devez disposer des autorisations IAM pour gérer les jetons d'accès (aidevops:CreateAccessToken,aidevops:RevokeAccessToken,aidevops:RotateAccessToken). Pour obtenir la liste complète, consultez DevOps Autorisations IAM de l'agent.

Activer les jetons d'accès

  1. Connectez-vous à la console AWS de gestion et ouvrez la console de l' AWS DevOps agent.

  2. Choisissez votre espace d'agent.

  3. Cliquez sur l’onglet Configuration.

  4. Dans la section Jetons d'accès, choisissez Activer.

  5. Confirmez l’action.

Création d'un jeton

  1. Ouvrez l'application Web DevOps Agent pour votre espace agent, puis dans le menu de navigation, choisissez Paramètres, puis choisissez Access Tokens.

  2. Choisissez Generate token (Générer le jeton).

  3. Entrez un nom pour le jeton.

  4. Choisissez un champ d'application :

    • read— Consultez les enquêtes, les recommandations, les discussions et les ressources de l'espace agent.

    • operate— Accès complet. Inclut toutread, en plus d'envoyer des messages, de créer des discussions et de gérer les tâches et les recommandations en attente.

  5. Choisissez un type de client :

    • human— Pour l'utilisation de l'IDE et de la CLI (Kiro, Claude Code, Cursor et autres outils interactifs).

    • agent— Pour les intégrations A2A autonomes et les agents programmatiques.

  6. Définissez une date d'expiration (de 1 à 60 jours).

  7. Copiez la valeur du jeton et stockez-la dans un endroit sûr et sécurisé, tel que AWS Secrets Manager. Vous ne pouvez pas le récupérer à nouveau.

Après avoir créé un jeton, l'application Web affiche un exemple de configuration que vous pouvez copier directement dans votre client.

Connect avec Kiro

Pour les utilisateurs de Kiro, un pouvoir d'AWS DevOps agent dédié est disponible depuis l'IDE ou sur le marché Kiro Powers.

Étape 1 : Installation de l'alimentation

Installez aws-devops-agent power depuis le Powers Marketplace.

Étape 2 : définir les variables d'environnement

Définissez les variables d'environnement suivantes pour configurer la connexion :

DEVOPS_AGENT_TOKEN=<your-access-token> DEVOPS_AGENT_REGION=<your-agent-space-region>

Étape 3 : Approuver les variables dans Kiro

Accédez à Paramètres > Variateurs d'environnement approuvés par MCP et approuvez et. DEVOPS_AGENT_TOKEN DEVOPS_AGENT_REGION Kiro ne transmet pas les variables d'environnement aux serveurs MCP tant qu'elles ne sont pas approuvées.

Étape 4 : Redémarrer Kiro

Redémarrez Kiro pour appliquer les modifications.

La puissance de Kiro inclut aws-mcp une solution de secours, qui fournit un accès direct à l' AWS API lorsque le point de terminaison du serveur distant n'est pas disponible.

Connectez-vous à Claude Code

Pour les utilisateurs de Claude Code, AWS DevOps l'agent est disponible à partir du plugin aws-agents-for-devsecops Claude, qui intègre à la fois les fonctionnalités d'agent et d' AWS DevOps agent de sécurité dans Claude. AWS Installez-le à partir des plugins Claude ou du référentiel source.

  1. Installez le plugin aws-agents-for-devsecops.

  2. Exécutez la /aws-agents-for-devsecops:setup-devops-agent commande pour configurer votre connexion.

Connectez-vous à d'autres clients MCP

Pour tout MCP-compatible client, configurez le serveur avec :

  • URLhttps://connect.aidevops.{region}.api.aws/mcp

  • En-tête d'autorisationBearer <your-token>

  • Délai d'attente : 120 secondes minimum (les réponses initiales peuvent prendre de 5 à 30 secondes ; les sessions de discussion en cours peuvent prendre plus de temps)

Cette configuration fonctionne également avec Kiro et Claude Code si vous préférez configurer la connexion manuellement au lieu d'utiliser l'alimentation ou le plugin dédié.

Exemple de configuration MCP :

{ "mcpServers": { "aws-devops-agent": { "url": "https://connect.aidevops.{region}.api.aws/mcp", "headers": { "Authorization": "Bearer <your-access-token>" } } } }

{region}Remplacez-le par la région de votre espace agent (par exemple,us-east-1) et <your-access-token> par la valeur du jeton.

Utiliser l'authentification SigV4

L'authentification SigV4 utilise vos AWS informations d'identification au lieu d'un jeton d'accès. Les plugins Kiro Power et Claude Code incluent le support SigV4 intégrémcp-proxy-for-aws, qui signe les demandes à l'aide de vos informations d'identification locales AWS .

Quand SigV4 est utilisé

  • Comme solution de secours lorsque le jeton d'accès n'est pas configuré ou échoue (expiré, non valide).

  • En tant qu'authentification principale lorsque vous disposez de plusieurs espaces d'agent et que vous devez effectuer un routage agent_space_id par appel d'outil.

  • En tant que choix de l'utilisateur, dans Claude Code, exécutez la compétence de configuration pour passer du jeton Bearer à l'authentification SigV4.

Conditions préalables

  • AWS informations d'identification disponibles dans l'environnement (via SSO, variables d'environnement ou fichier d'informations d'identification).

  • Vos informations d'identification doivent être autorisées à invoquer les actions de AWS DevOps l'agent. Pour les autorisations requises, consultez DevOps Autorisations IAM de l'agent.

  • uvxinstallé (le proxy fonctionneuvx mcp-proxy-for-aws@latest).

Exemple de configuration

Pour configurer un client MCP afin qu'il utilise SigV4 au lieu d'un jeton d'accès, lancez le serveur. mcp-proxy-for-aws Remplacez {region} par la région de votre espace d'agent (par exemple,us-east-1) :

{ "mcpServers": { "aws-devops-agent": { "command": "uvx", "timeout": 120000, "args": [ "mcp-proxy-for-aws@latest", "https://connect.aidevops.{region}.api.aws/mcp", "--service", "aidevops", "--region", "{region}" ] } } }

Le proxy signe chaque demande avec vos AWS informations d'identification locales, aucun jeton d'accès n'est donc requis.

Multi-Agent-Space routage

En mode SigV4, agent_space_id transmettez chaque appel d'outil pour spécifier l'espace agent à utiliser. Cela permet de naviguer entre plusieurs agents Spaces à partir d'un seul client.

Intégration A2A

Le point de terminaison A2A implémente la spécification A2A v1.0 à l'aide de la liaison HTTP/JSON.

Découverte des cartes d'agent

Récupérez la carte d'agent à l'adresse suivante :

GET https://connect.aidevops.{region}.api.aws/.well-known/agent-card.json

Opérations prises en charge

  • SendMessage— Envoyez un message et recevez une réponse.

  • SendStreamingMessage— Diffusez les réponses au fur et à mesure qu'elles sont générées.

  • GetTask— Vérifie l'état d'une tâche asynchrone.

  • ListTasks— Répertoriez les tâches d'un espace d'agents.

  • CancelTask— Annule une tâche en cours d'exécution.

  • SubscribeToTask— Abonnez-vous aux mises à jour des tâches via des événements envoyés par le serveur.

Skills

  • enquêter — Analyse asynchrone approfondie des problèmes opérationnels (5 à 8 minutes).

  • chat — Réponses instantanées aux questions opérationnelles.

Considérations sur la sécurité

Délimitation de la portée des jetons

  • Utilisez le moindre privilège : optez read pour les intégrations en lecture seule, operate uniquement lorsque le client doit envoyer des messages ou gérer des tâches.

  • Faites pivoter les jetons périodiquement. Les jetons expirent après la durée configurée (60 jours maximum).

  • Stockez les jetons dans des variables d'environnement ou des gestionnaires de secrets. Ne codez pas de jetons en dur dans le code source.

  • N'exécutez pas automatiquement les réponses des agents sans examen humain.

Liste d'adresses IP autorisées

Lorsque vous créez un jeton d'accès, vous pouvez éventuellement spécifier une liste d'adresses IP autorisées. Une fois configuré, le jeton ne peut être utilisé qu'à partir des adresses IP ou des plages CIDR spécifiées. Les demandes provenant d'autres adresses IP sont rejetées avec un message d'erreur de refus d'accès.

Rotation et révocation des jetons

  • Rotation : faites pivoter un jeton pour générer une nouvelle valeur de jeton tout en préservant son nom, son étendue et sa liste d'adresses IP autorisées. L'ancien jeton est immédiatement invalidé. Mettez à jour la configuration de votre client avec la nouvelle valeur du jeton.

  • Révocation — Si un jeton est compromis, révoquez-le immédiatement. Les jetons révoqués ne peuvent pas être utilisés et ne peuvent pas être restaurés.

Répondre à un jeton compromis

Si vous pensez qu'un jeton a été compromis, procédez comme suit :

  1. Bloquer l'accès à tous les jetons : dans la AWS DevOps console de l'agent, ouvrez votre espace agent, choisissez l'onglet Configuration, puis sélectionnez Désactiver dans la section des jetons d'accès. Cela bloque immédiatement tout accès basé sur des jetons à l'espace des agents.

  2. Révoquer les jetons compromis : dans l'application Web, accédez à Paramètres > Jetons d'accès, choisissez le jeton compromis, puis choisissez Révoquer. Vous pouvez révoquer des jetons même si les jetons d'accès sont désactivés.

  3. Re-enable jetons d'accès : après avoir révoqué les jetons compromis, réactivez les jetons d'accès depuis l'onglet Configuration si vous avez toujours besoin d'un accès basé sur des jetons.

Révocation des jetons par programme

Vous pouvez également révoquer les jetons par programme à l'aide de. awscurl Les commandes suivantes utilisent l'authentification Sigv4. Remplacez la région (us-east-1) par la région dans laquelle votre espace d'agent est créé.

Étape 1 : Répertoriez vos espaces d'agent

aws aidevops list-agent-spaces --region us-east-1

Étape 2 : Répertorier les jetons d'accès pour un espace d'agents

awscurl --service aidevops --region us-east-1 \ -H "Accept: application/json" \ "https://cp.aidevops.us-east-1.api.aws/v1/agentspaces/{agentSpaceId}/access-tokens"

Étape 3 : révoquer un jeton

awscurl --service aidevops --region us-east-1 -X POST \ -H "Accept: application/json" \ "https://cp.aidevops.us-east-1.api.aws/v1/agentspaces/{agentSpaceId}/access-tokens/{accessTokenId}/revoke"

Remplacez {agentSpaceId} et {accessTokenId} par les valeurs des réponses précédentes.

Traçabilité

Lorsqu'un jeton d'accès est utilisé, AWS DevOps l'agent assume un rôle en votre nom pour effectuer des actions. Cet AssumeRole appel est connecté AWS CloudTrail avec des balises de session qui identifient le jeton et l'appelant :

  • AgentSpaceId— Identifiant de l'espace des agents.

  • UserId— Identité du créateur du jeton.

  • AccessTokenId— Identifiant unique du jeton.

  • TokenName— Nom du jeton d'accès utilisé.

  • ClientType— Le protocole utilisé (MCP, A2A).

  • SourceIp— Adresse IP du client.

  • UserAgent— User-Agent Chaîne client (si disponible).

Les appels directs aux points de terminaison MCP et A2A ne sont enregistrés CloudTrail pour aucune des deux méthodes d'authentification. À chaque appel correspond un appel d' AWS API en aval connecté CloudTrail, avec un nom de session de rôle identifiable au formattoken_{spaceId}_{timestamp}_{tokenName}.

Limitation de la politique des points de terminaison VPC

Les points de terminaison du serveur distant ne prennent pas en charge les politiques de point de terminaison VPC. Les appels utilisant des jetons d'accès ou l'authentification Sigv4 ne peuvent pas être restreints par les politiques de point de terminaison du VPC.

Désactiver les jetons d'accès

La fonctionnalité des jetons d'accès est désactivée par défaut. Pour le désactiver après l'avoir activé :

  1. Ouvrez l'onglet Configuration de votre espace agent.

  2. Dans la section Jetons d'accès, choisissez Désactiver.

La désactivation bloque immédiatement tous les accès basés sur des jetons. Les jetons existants ne sont pas supprimés mais ne peuvent pas être utilisés tant que la fonctionnalité n'est pas réactivée.

Pour empêcher les utilisateurs de votre organisation d'activer les jetons d'accès, créez une politique de contrôle des services (SCP) qui refuse les actions de l'API des jetons d'accès et l'UpdateAgentSpaceaction (qui contrôle le basculement des jetons d'accès) :

{ "Version": "2012-10-17", "Statement": [ { "Sid": "DenyAccessTokenOperations", "Effect": "Deny", "Action": [ "aidevops:UpdateAgentSpace", "aidevops:CreateAccessToken", "aidevops:GetAccessToken", "aidevops:ListAccessTokens", "aidevops:RotateAccessToken", "aidevops:RevokeAccessToken" ], "Resource": "*" } ] }

Résolution des problèmes

Symptôme Cause Résolution
HTTP 401 non autorisé Le jeton n'est pas valide ou a expiré. Créez un nouveau jeton ou faites pivoter le jeton existant dans l'application Web.
HTTP 400 « A2A-Version  en-tête requis » En-tête de version du protocole manquant. Seule la version A2A v1.0 est prise en charge. Ajoutez un A2A-Version: 1.0 en-tête aux demandes A2A.
Délai d'expiration de la demande Les réponses initiales prennent de 5 à 30 secondes. Les enquêtes prennent de 5 à 8 minutes. Définissez le délai d'expiration du client sur au moins 120 secondes.
Connexion refusée URL ou région du point de terminaison incorrecte. Vérifiez le format de l'URL : https://connect.aidevops.{region}.api.aws