View a markdown version of this page

Connexion à des outils hébergés en privé - 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.

Connexion à des outils hébergés en privé

Vue d'ensemble des connexions privées

AWS DevOps L'agent peut être étendu à l'aide d'outils MCP (Model Context Protocol) personnalisés et d'autres intégrations qui permettent à l'agent d'accéder à des systèmes internes tels que des registres de packages privés, des plateformes d'observabilité auto-hébergées, des API de documentation internes et des instances de contrôle de code source (voir :). Configuration des intégrations et des connaissances Ces services sont souvent exécutés dans un Amazon Virtual Private Cloud (Amazon VPC) avec un accès Internet public restreint ou inexistant, ce qui signifie que AWS DevOps l'agent ne peut pas les atteindre par défaut.

Les connexions privées pour AWS DevOps Agent vous permettent de connecter en toute sécurité votre espace d'agent aux services exécutés sur votre VPC sans les exposer à l'Internet public. Les connexions privées fonctionnent avec toutes les intégrations qui doivent atteindre un point de terminaison privé, y compris les serveurs MCP, les instances Grafana ou Splunk auto-hébergées et les systèmes de contrôle de source tels que GitHub Enterprise Server et. GitLab Self-Managed

Note

Si vos outils hébergés de manière privée envoient des requêtes sortantes à l' AWS DevOps agent depuis votre VPC, ce trafic peut également être sécurisé en utilisant un point de terminaison VPC afin qu'il reste sur le réseau. AWS Par exemple, cela peut être utilisé avec des outils qui déclenchent l' DevOps Agent via des événements webhook (voir :Invoquer un DevOps agent via Webhook). Pour de plus amples informations, veuillez consulter Points de terminaison d'un VPC AWS PrivateLink.

Comment fonctionnent les connexions privées

Une connexion privée crée un chemin réseau sécurisé entre AWS DevOps l'agent et une ressource cible dans votre VPC. Sous le capot, l' AWS DevOps agent utilise Amazon VPC Lattice pour établir ce chemin de connectivité privé sécurisé. VPC Lattice est un service de réseau d'applications qui vous permet de connecter, de sécuriser et de surveiller les communications entre les applications sur l'ensemble des VPC, des comptes et des types de calcul, sans gérer l'infrastructure réseau sous-jacente.

Lorsque vous créez une connexion privée, les événements suivants se produisent :

  • Vous fournissez le VPC, les sous-réseaux et (éventuellement) les groupes de sécurité dotés d'une connectivité réseau avec votre service cible.

  • AWS DevOps L'agent crée une passerelle de ressources gérée par des services et provisionne ses interfaces réseau élastiques (ENI) dans les sous-réseaux que vous avez spécifiés.

  • L'agent utilise la passerelle de ressources pour acheminer le trafic vers l'adresse IP ou le nom DNS de votre service cible via le chemin du réseau privé.

La passerelle de ressources est entièrement gérée par AWS DevOps l'agent et apparaît en tant que ressource en lecture seule dans votre compte (nomméeaidevops-{your-private-connection-name}). Vous n'avez pas besoin de le configurer ni de le gérer. Les seules ressources créées dans votre VPC sont les ENI des sous-réseaux que vous spécifiez. Ces ENI servent de point d'entrée pour le trafic privé et sont entièrement gérés par le service. Ils n'acceptent pas les connexions entrantes depuis Internet et vous conservez le contrôle total de leur trafic via vos propres groupes de sécurité.

Sécurité

Les connexions privées sont conçues avec plusieurs niveaux de sécurité :

  • Aucune exposition publique à Internet — Tout le trafic entre AWS DevOps l'Agent et votre service cible reste sur le AWS réseau. Votre service n'a jamais besoin d'une adresse IP publique ou d'une passerelle Internet.

  • Service-controlled passerelle de ressources  : la passerelle de ressources gérée par les services est en lecture seule sur votre compte. Il ne peut être utilisé que par AWS DevOps l'Agent, et aucun autre service ou principal ne peut acheminer le trafic par son intermédiaire. Vous pouvez le vérifier dans les AWS CloudTrail journaux, qui enregistrent tous les appels d'API VPC Lattice.

  • Vos groupes de sécurité, vos règles — Vous contrôlez le trafic entrant et sortant vers les ENI par le biais de groupes de sécurité que vous possédez et gérez. Si vous ne spécifiez aucun groupe de sécurité, AWS DevOps l'agent crée un groupe de sécurité par défaut limité aux ports que vous définissez.

  • Service-linked rôles avec le moins de privilèges  : AWS DevOps l'agent utilise un rôle lié à un service pour créer uniquement les ressources VPC Lattice et Amazon EC2 nécessaires. Ce rôle est limité aux ressources étiquetées avec AWSAIDevOpsManaged et ne peut accéder à aucune autre ressource de votre compte.

Note

Si votre organisation dispose de politiques de contrôle des services (SCP) qui limitent les actions de l'API VPC Lattice, la passerelle de ressources gérée par les services est créée via un rôle lié à un service. Assurez-vous que vos SCP autorisent les actions nécessaires pour le rôle lié aux services.

Architecture

Le schéma suivant montre le chemin réseau pour une connexion privée.

Architecture réseau montrant la connexion de AWS DevOps l'agent via VPC Lattice.

Dans cette architecture :

  • AWS DevOps L'agent envoie une demande à votre service cible.

  • Amazon VPC Lattice achemine la demande via la passerelle de ressources gérée par les services de votre VPC. Pour les configurations avancées utilisant vos propres ressources VPC Lattice, voir Configuration avancée à l'aide des ressources VPC Lattice existantes.

  • Un ENI de votre VPC reçoit le trafic et le transmet à l'adresse IP ou au nom DNS de votre service cible.

  • Vos groupes de sécurité déterminent le trafic autorisé via les ENiS.

  • Du point de vue de votre service cible, la demande provient des adresses IP privées des ENI au sein de votre VPC.

Configuration des règles de pare-feu pour les connexions privées

Dans le cas des connexions privées, le trafic de AWS DevOps l'agent vers votre outil hébergé en privé provient des ENI Resource Gateway des sous-réseaux que vous avez spécifiés lors de la création de la connexion privée. Cela diffère des connexions aux outils hébergés publiquement, qui utilisent les adresses IP statiques répertoriées sur la page Sécurité.

Important

Les adresses IP statiques publiées sur la page Sécurité ne s'appliquent pas aux connexions privées. N'utilisez pas ces adresses IP dans vos règles de pare-feu pour les outils hébergés en privé.

Pour autoriser le trafic des AWS DevOps agents à atteindre votre outil hébergé en privé, procédez comme suit :

  1. Identifiez les sous-réseaux que vous avez spécifiés lors de la création de la connexion privée.

  2. Dans le groupe de sécurité de votre outil cible (par exemple, le groupe de sécurité de votre Grafana ALB), ajoutez une règle entrante en utilisant l'une des approches suivantes :

    • Référencement des groupes de sécurité (recommandé) — Autoriser le trafic entrant en provenance du groupe de sécurité attaché à la connexion privée ENiS. Si vous avez spécifié un groupe de sécurité lors de la création d'une connexion privée, utilisez cet ID de groupe de sécurité comme source. Par exemple : autoriser le protocole TCP 443 depuissg-0123456789abcdef0.

    • Liste d'adresses CIDR autorisées pour les sous-réseaux  : autorisez le trafic entrant provenant des blocs CIDR des sous-réseaux que vous avez spécifiés lors de la création de la connexion privée. Par exemple, si l'adresse CIDR de votre sous-réseau est 10.0.1.0/24 : autoriser le protocole TCP 443 à partir de. 10.0.1.0/24

Pour trouver les blocs d'adresse CIDR de votre sous-réseau, exécutez la commande suivante avec les ID de sous-réseau que vous avez spécifiés lors de la création de la connexion privée :

aws ec2 describe-subnets \ --subnet-ids subnet-0123456789abcdef0 subnet-0123456789abcdef1 \ --query 'Subnets[*].[SubnetId,CidrBlock]' \ --output table
Note

Les adresses IP ENI restent stables pendant toute la durée de vie de votre connexion privée. Si vous supprimez et recréez une connexion privée, les adresses IP ENI peuvent changer. L'utilisation de blocs CIDR de sous-réseau ou de référencement de groupes de sécurité évite de devoir mettre à jour les règles après la recréation.

Créez une connexion privée

Vous pouvez créer une connexion privée à l'aide de la console de AWS gestion ou de l' AWS interface de ligne de commande.

Note

Les zones de disponibilité suivantes ne sont pas prises en charge par VPC Lattice : use1-az3usw1-az2,apne1-az3,apne2-az2,, euc1-az2euw1-az4,cac1-az3. ilc1-az2

Conditions préalables

Avant de créer une connexion privée, vérifiez que vous disposez des éléments suivants :

  • Un espace d'agent actif — Vous avez besoin d'un espace d'agent existant dans votre compte. Si vous n'en avez pas, veuillez consulter Commencer à utiliser AWS DevOps Agent.

  • Un service cible accessible de manière privée  : votre serveur MCP, votre agent A2A distant, votre plateforme d'observabilité ou tout autre service doit être accessible via une adresse IP privée ou un nom DNS connu depuis le VPC sur lequel la passerelle de ressources est déployée. Le service peut s'exécuter dans le même VPC, dans un VPC homologue ou sur site, à condition qu'il soit routable à partir des sous-réseaux de la passerelle de ressources. Le service doit gérer le trafic HTTPS avec une version TLS minimale de 1.2 sur un port que vous spécifiez lors de la création de la connexion.

  • Sous-réseaux de votre VPC  : identifiez 1 à 20 sous-réseaux dans lesquels les ENI seront créés. Nous vous recommandons de sélectionner des sous-réseaux dans plusieurs zones de disponibilité pour une haute disponibilité. Ces sous-réseaux doivent disposer d'une connectivité réseau avec votre service cible. Un sous-réseau par zone de disponibilité peut être utilisé par VPC Lattice.

  • (Facultatif) Groupes de sécurité — Si vous souhaitez contrôler le trafic à l'aide de règles spécifiques, préparez jusqu'à cinq ID de groupes de sécurité à associer aux ENI. Si vous omettez les groupes de sécurité, AWS DevOps l'agent crée un groupe de sécurité par défaut.

Les connexions privées sont des ressources au niveau du compte. Une fois que vous avez créé une connexion privée, vous pouvez la réutiliser dans plusieurs intégrations et espaces d'agent qui doivent atteindre le même hôte.

Note

En mode géré par les services, l' AWS DevOps agent crée la passerelle de ressources dans le VPC et les sous-réseaux que vous spécifiez, et ce VPC appartient au même compte que la connexion privée. AWS DevOps L'agent ne peut pas créer de passerelle de ressources dans un autre compte. Si votre service cible est exécuté sur un autre AWS compte ou sur site, choisissez l'une des options suivantes :

  • Donnez au VPC de la passerelle un itinéraire vers la cible via le peering VPC, AWS Transit Gateway ou une connexion de réseau privé virtuel (VPN). La passerelle reste dans ce compte et le trafic atteint la cible via cette connexion. La route doit exister dans le VPC de la passerelle, et pas seulement dans le compte sur lequel s'exécute la cible.

  • Utilisez le mode autogéré. Créez la passerelle de ressources et la configuration des ressources dans le compte sur lequel s'exécute la cible, partagez la configuration des ressources avec ce compte via AWS Resource Access Manager (AWS RAM), acceptez le partage, puis créez la connexion privée avec l'ARN de cette configuration de ressources. Consultez la section Configuration avancée à l'aide des ressources VPC Lattice existantes.

Création d'une connexion privée à l'aide de la console

  1. Ouvrez la console de AWS DevOps l'agent.

  2. Dans le volet de navigation, choisissez Capability providers, puis sélectionnez Private connections.

  3. Choisissez Créer une nouvelle connexion.

  4. Dans le champ Nom, entrez un nom descriptif pour la connexion, par exemplemy-mcp-tool-connection.

  5. Pour VPC, sélectionnez le VPC sur lequel la passerelle de ressources ENiS sera déployée.

  6. Pour Sous-réseaux, sélectionnez un ou plusieurs sous-réseaux (jusqu'à 20). Nous vous recommandons de choisir des sous-réseaux dans au moins deux zones de disponibilité.

  7. Pour le type d'adresse IP, sélectionnez le type d'adresse IP de votre service cible (IPv4IPv6, ouDualStack).

  8. (Facultatif) Pour Nombre d'adresses IPv4, si vous avez sélectionné IPv4 ou Dualstack comme type d'adresse IP, vous pouvez entrer le nombre d'adresses IPv4 par ENI pour votre passerelle de ressources. La valeur par défaut est de 16 adresses IPv4 par ENI.

  9. (Facultatif) Pour les groupes de sécurité, sélectionnez les groupes de sécurité existants (jusqu'à 5) afin de limiter le trafic autorisé à atteindre votre service cible. Si vous n'en sélectionnez aucun, un groupe de sécurité par défaut est créé.

  10. (Facultatif) Pour les plages de ports, spécifiez les ports TCP que votre application cible écoute (par exemple, 443 ou8080-8090). Vous pouvez spécifier jusqu'à 11 plages de ports. Si vous ne spécifiez aucune plage de ports, la connexion n'autorise 443 que les ports. La connexion supprime le trafic vers n'importe quel port en dehors des plages configurées sans erreur. Si l'URL de votre point de terminaison inclut un port non standard (par exemplehttps://tools.example.com:8089/mcp), incluez ce port ici. Vous ne pouvez pas modifier les plages de ports après avoir créé la connexion. Pour ajouter un port, supprimez la connexion et recréez-la.

  11. Dans Adresse hôte, entrez l'adresse IP ou le nom DNS de votre service cible (par exemple, mcp.internal.example.com ou10.0.1.50). Le service doit être accessible depuis le VPC sélectionné. Si vous entrez un nom DNS, la manière dont il est résolu dépend du mode de résolution DNS que vous choisissez à l'étape suivante.

  12. Pour la résolution DNS, choisissez comment le nom DNS de l'adresse hôte est résolu :

    • Public (par défaut) — Le nom DNS est résolu à l'aide du DNS public. Si vous entrez un nom DNS comme adresse d'hôte, il doit pouvoir être résolu publiquement. Utilisez ce mode lorsque votre nom d'hôte possède un enregistrement DNS public (qui peut pointer vers une adresse IP privée). Si vous spécifiez une adresse IP comme adresse d'hôte, ce paramètre n'a aucun effet.

    • Dans VPC  : le nom DNS est résolu à partir du contexte de votre VPC, de sorte que les noms d'hôtes qui n'existent que dans une zone hébergée privée sont résolus correctement sans aucun enregistrement DNS public. Utilisez ce mode lorsque le nom d'hôte de votre service cible est privé pour votre VPC.

  13. (Facultatif) Effectuez cette étape si une autorité de certification (CA) privée a émis les certificats TLS pour votre adresse hôte. Pour Clé publique de certificat, entrez la chaîne de PEM-encoded certificats complète pour le service cible. Répertoriez les certificats dans l'ordre : le certificat feuille (serveur) d'abord, puis tous les certificats CA intermédiaires, puis le certificat CA racine. Si la chaîne est incomplète, la connexion échoue. AWS DevOps L'agent vérifie ensuite la connexion TLS et l'approuve.

  14. Choisissez Créer une connexion.

L'état de la connexion passe à Création en cours. Ce processus peut prendre jusqu'à 10 minutes. Lorsque l'état passe à Actif, le chemin réseau est prêt.

Si le statut passe à Create failed, vérifiez les points suivants :

  • Les sous-réseaux que vous avez spécifiés disposent d'adresses IP disponibles.

  • Votre compte n'a pas atteint les quotas de service VPC Lattice.

  • Aucune politique IAM restrictive n'empêche le rôle lié à un service de créer des ressources.

Note

Ces étapes peuvent également être effectuées en sélectionnant un fournisseur de capacités Create a new private connection lors de l'enregistrement. Pour plus d'informations, voir Utiliser une connexion privée avec un fournisseur de fonctionnalités.

Créez une connexion privée à l'aide du AWS INTERFACE DE LIGNE DE COMMANDE (CLI)

Exécutez la commande suivante pour créer une connexion privée. Remplacez les valeurs des espaces réservés par les vôtres.

aws devops-agent create-private-connection \ --name my-mcp-tool-connection \ --mode '{ "serviceManaged": { "hostAddress": "mcp.internal.example.com", "vpcId": "vpc-0123456789abcdef0", "subnetIds": [ "subnet-0123456789abcdef0", "subnet-0123456789abcdef1" ], "securityGroupIds": [ "sg-0123456789abcdef0" ], "portRanges": ["443"], "dnsResolution": "PUBLIC" } }'

Le dnsResolution champ contrôle la manière dont le nom hostAddress DNS est résolu. Les valeurs valides sont PUBLIC (valeur par défaut en cas d'omission) etIN_VPC. À utiliser IN_VPC lorsque votre adresse d'hôte est résolue uniquement dans votre VPC (par exemple, un nom dans une zone hébergée privée). Si vous spécifiez une adresse IP pourhostAddress, ce champ n'a aucun effet.

La réponse inclut le nom de la connexion et l'état suivant CREATE_IN_PROGRESS :

{ "name": "my-mcp-tool-connection", "status": "CREATE_IN_PROGRESS", "resourceGatewayId": "rgw-0123456789abcdef0", "hostAddress": "mcp.internal.example.com", "vpcId": "vpc-0123456789abcdef0" }

Pour vérifier l'état de la connexion, utilisez la describe-private-connection commande suivante :

aws devops-agent describe-private-connection \ --name my-mcp-tool-connection

Lorsque le statut est définiACTIVE, votre connexion privée est prête à être utilisée.

Utiliser une connexion privée avec un fournisseur de fonctionnalités

Pour utiliser une connexion privée, vous pouvez créer un lien vers celle-ci lors de l'enregistrement d'un fournisseur de fonctionnalités. Les fonctionnalités prises en charge qui peuvent être utilisées avec des connexions privées incluent : GitHub GitLabMCP Server,Remote Agent, etGrafana. Vous pouvez effectuer cette étape à l'aide de la console de AWS gestion ou de l' AWS interface de ligne de commande.

Note

Lors de l'enregistrement d'un fournisseur de fonctionnalités, AWS DevOps l'agent vérifie que le terminal est accessible et qu'il répond. Assurez-vous que votre service cible fonctionne et accepte les connexions avant de terminer l'enregistrement.

Utiliser une connexion privée avec un fournisseur de fonctionnalités à l'aide de la console

Dans la console de l' AWS DevOps agent, les connexions privées peuvent être liées à une fonctionnalité lors de l'enregistrement en sélectionnant l'option « Se connecter au terminal à l'aide d'une connexion privée ».

La case Connexion au terminal à l'aide d'une connexion privée est cochée.
  1. Ouvrez la console de l' AWS DevOps agent et accédez à votre espace agent.

  2. Dans la section Capability Providers, choisissez Registration.

  3. Sélectionnez Enregistrer pour le type de fonctionnalité que vous souhaitez utiliser avec la connexion privée.

  4. Dans la vue des détails de l'enregistrement, entrez l'URL du point de terminaison auquel vous souhaitez vous connecter via la connexion privée (par exemple,https://mcp.internal.example.com).

  5. Sélectionnez Se connecter au terminal à l'aide d'une connexion privée.

  6. Sélectionnez une connexion privée existante qui correspond à l'URL du point de terminaison auquel vous souhaitez vous connecter, ou sélectionnez Créer une nouvelle connexion privée pour en créer une.

  7. Terminez le processus d'enregistrement pour le fournisseur de capacités.

Note

Lorsque vous sélectionnez une connexion privée pour un fournisseur de fonctionnalités qui utilise l'authentification OAuth (informations d'identification du client ou 3LO), la connexion privée s'applique à la fois au point de terminaison du fournisseur de fonctionnalités et au point de terminaison d'échange de jetons. Assurez-vous que la connexion privée est configurée avec une adresse hôte capable d'acheminer le trafic vers les deux terminaux.

Adresse de l'hôte et URL du point de terminaison

Une connexion privée et un fournisseur de fonctionnalités utilisent chacun une adresse. Les deux ne sont pas interchangeables :

  • L'adresse hôte de la connexion privée est la cible vers laquelle la connexion est dirigée. Il peut s'agir d'une adresse IP ou d'un nom DNS, et lorsqu'il s'agit d'un nom DNS, le mode de résolution DNS de la connexion détermine la manière dont il est résolu.

  • L'URL du point de terminaison sur le fournisseur de fonctionnalités est l'URL demandée par l' AWS DevOps agent, y compris son schéma, son port et son chemin.

Les deux valeurs ne doivent pas nécessairement être identiques, de sorte qu'un nom d'hôte qui se résout uniquement à l'intérieur de votre VPC ne doit pas nécessairement apparaître dans l'adresse de l'hôte. Si le nom d'hôte de votre service est privé pour votre VPC, deux options s'offrent à vous :

  • Définissez la résolution DNS de la connexion sur In VPC et utilisez le nom d'hôte pour l'adresse de l'hôte et l'URL du point de terminaison.

  • Définissez l'adresse hôte sur l'adresse IP privée de la cible et conservez le nom d'hôte dans l'URL du point de terminaison.

Vous choisissez le mode de résolution DNS lorsque vous créez la connexion. Choisissez donc l'option que vous souhaitez en premier. Pour plus d'informations sur les symptômes provoqués par une incompatibilité entre ces deux valeurs, consultez la section Une adresse d'hôte DNS ne se résout pas ou le trafic atteint le mauvais endroit.

Routage du terminal et échange de jetons OAuth via différentes connexions privées

Pour les fournisseurs de fonctionnalités de serveur OAuth-based MCP et d'agent distant, l'agent envoie des requêtes à deux points de terminaison différents : l'URL cible (le point de terminaison du serveur MCP ou de l'agent distant que vous enregistrez) et l'URL d'échange (le point de terminaison d'échange de jetons OAuth). Par défaut, un seul privateConnectionName est utilisé pour les deux. Si ces deux points de terminaison sont accessibles via différents chemins de réseau privé, vous pouvez acheminer chacun d'eux via sa propre connexion privée en utilisant targetUrlPrivateConnectionName et à la exchangeUrlPrivateConnectionName place :

  • targetUrlPrivateConnectionName— la connexion privée utilisée pour atteindre le serveur MCP ou le point de terminaison de l'agent distant (URL cible).

  • exchangeUrlPrivateConnectionName— la connexion privée utilisée pour atteindre le point de terminaison d'échange de jetons OAuth (URL d'échange).

Vous pouvez spécifier l'un ou l'autre ou les deux. Si vous n'en définissez qu'un, l'autre point de terminaison est atteint via l'Internet public (il ne revient pas à l'autre connexion privée).

Important

targetUrlPrivateConnectionNameet exchangeUrlPrivateConnectionName ne peut pas être combiné privateConnectionName dans la même demande. Utilisez soit un nom unique privateConnectionName (s'applique aux deux points de terminaison) soit un nom par point de terminaison, et non les deux.

L'exemple suivant enregistre un serveur MCP d'identification du client OAuth qui atteint son point de terminaison et son point de terminaison d'échange de jetons via deux connexions privées distinctes :

aws devops-agent register-service \ --service mcpserver \ --target-url-private-connection-name my-target-connection \ --exchange-url-private-connection-name my-exchange-connection \ --service-details '{ "mcpserver": { "name": "my-mcp-tool", "endpoint": "https://mcp.internal.example.com", "authorizationConfig": { "oAuthClientCredentials": { "clientName": "MyOAuthClient", "clientId": "client-id", "clientSecret": "secret-value", "exchangeUrl": "https://auth.internal.example.com/token" } } } }' \ --region us-east-1

Utilisez une connexion privée avec un fournisseur de fonctionnalités à l'aide du AWS INTERFACE DE LIGNE DE COMMANDE (CLI)

Vous pouvez enregistrer des fonctionnalités à l'aide d'une connexion privée en incluant l'private-connection-nameargument. Vous trouverez ci-dessous un exemple d'enregistrement d'un serveur MCP avec une autorisation par clé API à l'aide de la connexion my-mcp-tool-connection privée. Remplacez les valeurs des espaces réservés par les vôtres.

aws devops-agent register-service \ --service mcpserver \ --private-connection-name my-mcp-tool-connection \ --service-details '{ "mcpserver": { "name": "my-mcp-tool", "endpoint": "https://mcp.internal.example.com", "authorizationConfig": { "apiKey": { "apiKeyName": "api-key", "apiKeyValue": "secret-value", "apiKeyHeader": "x-api-key" } } } }' \ --region us-east-1

Vérifier une connexion privée

Une fois que la connexion privée a atteint l'état actif et a été utilisée par un fournisseur de fonctionnalités, vérifiez que AWS DevOps l'agent peut atteindre votre service cible :

  1. Ouvrez la console de l' AWS DevOps agent et accédez à votre espace agent.

  2. Démarrez une nouvelle session de chat.

  3. Invoquez une commande qui utilise l'intégration soutenue par votre connexion privée. Par exemple, si votre outil MCP donne accès à une base de connaissances interne, posez à l'agent une question qui nécessite cette base de connaissances.

  4. Vérifiez que l'agent renvoie les résultats du service privé.

Si la connexion échoue, vérifiez les points suivants :

  • Limites VPC Lattice  : vérifiez que vous n'avez atteint aucune limite de quota de passerelle de ressources ou d'autres limites de quota VPC Lattice

  • Règles relatives aux groupes de sécurité  : vérifiez que les groupes de sécurité attachés aux ENI autorisent le trafic sortant sur le port sur lequel votre service écoute. Vérifiez également que le groupe de sécurité de votre service autorise le trafic entrant sur le port cible. Le trafic provient des adresses IP des plans de données VPC Lattice comprises dans la plage d'adresses CIDR de votre VPC. Vous pouvez utiliser le référencement par groupe de sécurité (en autorisant le groupe de sécurité ENI comme source) ou autoriser le trafic entrant depuis le CIDR du VPC.

  • Connectivité des sous-réseaux  : vérifiez que les sous-réseaux que vous avez sélectionnés peuvent acheminer le trafic vers votre service. Si le service s'exécute dans un sous-réseau différent, vérifiez que les tables de routage autorisent le trafic entre elles.

  • Disponibilité du service  : vérifiez que votre service fonctionne et accepte les connexions sur le port prévu.

  • Zone de disponibilité non prise en charge  : vérifiez que vos sous-réseaux se trouvent dans des zones de disponibilité prises en charge. Exécutez aws ec2 describe-subnets --subnet-ids <your-subnet-ids> --query 'Subnets[*].[SubnetId,AvailabilityZoneId]' et vérifiez les zones de disponibilité non prises en charge répertoriées ci-dessus.

Supprimer une connexion privée

Vous pouvez supprimer les connexions privées non utilisées à l'aide de la console AWS de gestion ou de l' AWS interface de ligne de commande.

Supprimer une connexion privée à l'aide de la console

  1. Ouvrez la console de AWS DevOps l'agent.

  2. Dans le volet de navigation, choisissez Capability providers, puis sélectionnez Private connections.

  3. Sélectionnez le menu Actions pour la connexion privée que vous souhaitez supprimer, puis sélectionnez Supprimer.

La connexion privée sera affichée avec le statut « Suppression de la connexion » pendant que l' AWS DevOps agent supprime la passerelle de ressources gérées et les ENI de votre VPC. Une fois la suppression terminée, la connexion n'apparaît plus dans votre liste de connexions privées.

Supprimez une connexion privée à l'aide du AWS INTERFACE DE LIGNE DE COMMANDE (CLI)

aws devops-agent delete-private-connection \ --name my-mcp-tool-connection

La réponse renvoie un statut deDELETE_IN_PROGRESS. AWS DevOps L'agent supprime la passerelle de ressources gérées et les ENI de votre VPC. Une fois la suppression terminée, la connexion n'apparaît plus dans votre liste de connexions privées.

Configuration avancée à l'aide des ressources VPC Lattice existantes

Si votre organisation utilise déjà Amazon VPC Lattice et gère vos propres configurations de ressources, vous pouvez créer une connexion privée en mode autogéré. Au lieu de demander à AWS DevOps l'agent de créer une passerelle de ressources pour vous, vous devez fournir le nom de ressource Amazon (ARN) d'une configuration de ressources existante qui pointe vers votre service cible.

Cette approche est utile lorsque vous :

  • Vous souhaitez avoir un contrôle total sur la passerelle de ressources et le cycle de vie de configuration des ressources.

  • Nécessité de partager des configurations de ressources entre plusieurs AWS comptes ou services.

  • La passerelle de ressources doit s'exécuter sur le même compte que votre service cible, plutôt que sur le compte sur lequel vous créez la connexion privée.

  • Exiger des journaux d'accès VPC Lattice pour une surveillance détaillée du trafic.

  • Exécutez une architecture réseau en étoile.

Pour créer une connexion privée autogérée à l'aide de l' AWS interface de ligne de commande :

aws devops-agent create-private-connection \ --name my-advanced-connection \ --mode '{ "selfManaged": { "resourceConfigurationId": "arn:aws:vpc-lattice:us-east-1:123456789012:resourceconfiguration/rcfg-0123456789abcdef0" } }'

Pour plus de détails sur la configuration des passerelles de ressources VPC Lattice et des configurations de ressources, consultez le guide de l'utilisateur Amazon VPC Lattice.

Cross-region connectivité

Les connexions privées doivent être créées dans la même AWS région que votre espace agent. Si votre service cible s'exécute dans une autre région, utilisez le mode autogéré avec un peering VPC interrégional ou un peering Transit Gateway pour combler le fossé.

Le schéma est le suivant :

  1. Établissez une connectivité interrégionale (peering VPC ou peering Transit Gateway) entre un VPC de la région de l'espace agent et le VPC du service. Les CIDR VPC ne doivent pas se chevaucher.

  2. Créez une passerelle de ressources dans la région de l'espace agent, dans un VPC doté de la connexion d'appairage.

  3. Créez une configuration de ressources dans la région de l'espace agent pointant vers l'adresse IP du service (routable via la connexion d'appairage).

  4. Créez une connexion privée autogérée à l'aide de cet ARN de configuration de ressources.

Par exemple, si votre espace agent us-east-1 et votre serveur MCP se trouvent dans ap-southeast-2 :

aws devops-agent create-private-connection \ --name cross-region-connection \ --mode '{ "selfManaged": { "resourceConfigurationId": "arn:aws:vpc-lattice:us-east-1:123456789012:resourceconfiguration/rcfg-0123456789abcdef0" } }' \ --region us-east-1