View a markdown version of this page

Connectez-vous aux ressources privées de votre VPC à l'aide de VPC Lattice - Amazon Bedrock AgentCore

Connectez-vous aux ressources privées de votre VPC à l'aide de VPC Lattice

Amazon Bedrock AgentCore prend en charge la connectivité privée aux ressources hébergées dans votre AWS VPC ou aux environnements sur site connectés à votre VPC, tels que les serveurs MCP privés, les API REST internes ou les bases de données, sans exposer ces services à l'Internet public.

La connectivité privée est établie à l'aide des passerelles de ressources Amazon VPC Lattice et des configurations de ressources. Pour plus de détails sur les deux modes pris en charge (Lattice géré et autogéré), consultez la section Modes de sortie VPC pris en charge.

Concepts clés

Passerelle de ressources

Une passerelle de ressources Amazon VPC Lattice est le point d'entrée dans votre VPC. Il est associé à un ou plusieurs sous-réseaux et groupes de sécurité de votre VPC et sert de point d'entrée réseau pour le trafic en provenance de. AgentCore Lorsque vous utilisez Managed Lattice, il AgentCore crée et gère cette ressource en votre nom.

Configuration des ressources

Une configuration de ressource représente un point de terminaison privé spécifique (adresse IP ou nom DNS) au sein de votre VPC. Il est rattaché à une passerelle de ressources et définit quelle ressource AgentCore peut accéder. Lorsque vous utilisez Managed Lattice, AgentCore crée cette ressource dans le compte AgentCore de service en votre nom.

Association des ressources du réseau de services

Une association de ressources de réseau de service connecte une configuration de ressources au réseau de AgentCore services, permettant au AgentCore service d'invoquer votre point de terminaison privé. AgentCore crée et gère toujours cette association en votre nom, que vous utilisiez Lattice géré ou autogéré.

Domaine de routage

Champ facultatif qui spécifie un domaine intermédiaire AgentCore utilisé comme domaine de configuration des ressources au lieu du domaine cible réel. Cela est utile lorsque vous souhaitez acheminer le trafic via un composant intermédiaire tel qu'un point de terminaison VPC ou un équilibreur de charge interne, par exemple pour consolider plusieurs passerelles d'API privées derrière un seul point de terminaison VPC, réduisant ainsi le nombre de configurations de ressources et les coûts associés. Le AgentCore service continue d'invoquer le domaine cible réel à l'aide de la dérogation SNI. Pour plus d'informations, consultez la section Acheminer le trafic via un domaine intermédiaire.

Services Amazon Bedrock AgentCore pris en charge

Les AgentCore services Amazon Bedrock suivants prennent en charge la sortie VPC avec VPC Lattice :

AgentCore Passerelle

AgentCore Gateway prend en charge les points de terminaison privés pour les types de serveurs MCP et de cibles OpenAPI. Pour plus d'informations sur la configuration de la sortie VPC pour chaque type de cible, consultez Configurer la sortie VPC Amazon Bedrock AgentCore Gateway pour les cibles de passerelle.

AgentCore Identité

AgentCore Identity prend en charge les points de terminaison privés pour se connecter aux fournisseurs d'identité OAuth 2.0 hébergés par VPC pour les fournisseurs d'autorisation JWT entrants et sortants d'informations d'identification OAuth. Pour plus de détails, voir Se connecter à des fournisseurs d'identité privés.

Modes de sortie VPC pris en charge

Amazon Bedrock AgentCore prend en charge deux modes pour configurer la connectivité VPC Lattice :

  • Ressources VPC gérées : Amazon Bedrock AgentCore crée et gère la passerelle de ressources VPC Lattice et la configuration des ressources en votre nom. Vous fournissez votre VPC, vos sous-réseaux et vos groupes de sécurité facultatifs. Il s'agit de l'approche la plus simple pour la connectivité VPC intégrée qui s'intègre aux architectures réseau existantes telles que le hub and spoke.

    Note

    Vous n'avez pas besoin d'autorisations VPC Lattice IAM, de modifications de SCP ou de processus d'approbation supplémentaires pour utiliser cette option. Amazon Bedrock AgentCore gère toutes les ressources VPC Lattice en votre nom.

  • Self-managed Ressources du réseau : vous créez et gérez vous-même la passerelle de ressources VPC Lattice et la configuration des ressources. Cette approche améliore la gouvernance et la visibilité : vous pouvez voir exactement quels services sont connectés à quels domaines, qui y a accès, et révoquer les connexions à un niveau granulaire. Il permet également une connectivité directe entre comptes via la AWS RAM sans nécessiter de peering VPC ou de passerelles de transit.

Le tableau suivant récapitule les principales différences :

Dimension Ressources VPC gérées Self-managed Ressources en treillis

Dépendance de service supplémentaire

Aucune intégration ou inscription sur VPC Lattice n'est requise. Le VPC Lattice est utilisé en interne par Amazon Bedrock AgentCore comme détail d'implémentation. Vous n'avez pas besoin de politiques IAM VPC Lattice, de modifications du SCP ou de processus d'approbation supplémentaires. Vous n'avez besoin que des autorisations Amazon EC2 standard et de la possibilité de créer un rôle lié à un service.

Oui. Vous créez et gérez directement les ressources VPC Lattice, ce qui nécessite des autorisations VPC Lattice IAM (par exemple, et). vpc-lattice:CreateResourceGateway vpc-lattice:CreateResourceConfiguration vpc-lattice:CreateServiceNetworkResourceAssociation Vous devrez peut-être mettre à jour les SCP ou demander une approbation si votre organisation restreint l'accès aux VPC Lattice.

Gouvernance et visibilité

La seule ressource de votre compte est une passerelle de ressources, qui est en fait une interface réseau (ENI) dans votre VPC. Il s'agit d'une ressource en lecture seule entièrement gérée par Amazon Bedrock AgentCore . Vous ne pouvez pas la modifier, la configurer ou interagir avec elle.

Visibilité complète sur les passerelles de ressources, les configurations des ressources, les associations de réseaux de services et les domaines connectés. Vous possédez et gérez toutes les ressources, et vous pouvez auditer les connexions et révoquer l'accès à un niveau granulaire.

Complexité

Simple : fournissez un VPC, des sous-réseaux et des groupes de sécurité. Amazon Bedrock AgentCore gère le reste.

Avancé : vous créez et gérez vous-même les passerelles de ressources VPC Lattice et les configurations de ressources.

Cross-account connectivité

Non pris en charge. Utilisez-le avec des architectures réseau existantes telles que hub-and-spoke (peering VPC ou Transit AWS Gateway) pour des scénarios entre comptes ou entre VPC.

Pris en charge via la AWS RAM. Permet une connectivité directe entre comptes sans nécessiter de peering VPC ou de passerelles de transit.

Tarification du VPC Lattice

Frais de traitement des données uniquement (par Go traité via la passerelle de ressources).

Tarif horaire par ressource VPC ajoutée à un réseau de services, plus les frais de traitement des données (par Go).

Cycle de vie des ressources

Amazon Bedrock AgentCore crée, réutilise et supprime des passerelles de ressources en votre nom.

Vous êtes responsable du cycle de vie complet des passerelles de ressources et des configurations de ressources.

Consommation IP et débit

Chaque passerelle de ressources gérées consomme 1 adresse IP par sous-réseau. Ceci n'est pas configurable.

Lorsqu'il est utilisé avec Amazon Bedrock AgentCore, il consomme 1 adresse IP par sous-réseau. S'il est également connecté à d'autres réseaux de services VPC Lattice, il consomme des adresses IP supplémentaires en fonction de la ipv4AddressesPerEni valeur de la passerelle de ressources. La combinaison de la plage de ports et des adresses IP détermine le nombre maximal de connexions simultanées pour cette association de ressources réseau de services. Notez qu'il y a une période de refroidissement de 350 secondes après la fin d'une connexion avant que ce port puisse être réutilisé.

Pour en savoir plus sur les tarifs de VPC Lattice, consultez les tarifs d'Amazon VPC Lattice.

Option 1 : ressources VPC gérées

Avec les ressources VPC gérées, vous fournissez des informations sur votre VPC, votre sous-réseau et les groupes de sécurité facultatifs. AgentCore gère la création et la gestion du cycle de vie de la passerelle de ressources VPC Lattice et de la configuration des ressources en votre nom. La passerelle de ressources gérées enveloppe les ENI de votre VPC. Vous ne pouvez ni le modifier, ni le configurer, ni interagir avec lui. AgentCore possède son cycle de vie complet, y compris la création, la réutilisation et la suppression.

Note

Vous n'avez pas besoin d'autorisations VPC Lattice IAM, de modifications de SCP ou de processus d'approbation supplémentaires pour utiliser les ressources VPC gérées, car Amazon Bedrock AgentCore utilise Lattice comme dépendance interne et toutes les passerelles de ressources Lattice sont en lecture seule pour le client.

AgentCore utilise le rôle AWSServiceRoleForBedrockAgentCoreGatewayNetwork lié au service pour créer et gérer les passerelles de ressources VPC Lattice dans votre compte. Ce rôle est créé automatiquement la première fois que vous créez une cible de passerelle avec un point de terminaison privé géré. Pour plus d'informations sur ce rôle, consultez la section Rôle lié au service Gateway.

Conditions préalables

Avant de créer une cible de passerelle avec un point de terminaison privé géré, assurez-vous de ce qui suit :

  • Votre ressource privée (serveur MCP ou API REST) est en cours d'exécution et accessible au sein de votre VPC.

  • Au moins un sous-réseau de votre VPC dispose d'un accès réseau à la ressource privée.

  • Vos groupes de sécurité autorisent le trafic entrant sur le port utilisé par votre ressource privée (généralement le port 443 pour HTTPS).

  • Votre principal IAM est iam:CreateServiceLinkedRole autorisé à bedrock-agentcore.amazonaws.com AgentCore créer le rôle lié au service en votre nom s'il n'existe pas déjà. Pour connaître la politique IAM requise, consultez la section Rôle lié au service Gateway.

  • Votre principal IAM dispose des autorisations Amazon EC2 suivantes, qui sont requises AgentCore pour configurer la passerelle de ressources VPC Lattice dans votre VPC :

    • ec2:CreateNetworkInterface

    • ec2:DescribeVpcs

    • ec2:DescribeSecurityGroups

    • ec2:DescribeSubnets

  • Si votre ressource privée utilise un certificat TLS émis par une autorité de certification privée, vous pouvez placer un Application Load Balancer interne avec un certificat ACM public devant celle-ci. Pour plus d'informations, voir Solution pour les certificats privés : ALB.

Création d'une cible avec un point de terminaison privé géré

Pour créer une ressource avec un point de terminaison privé géré, incluez le privateEndpoint.managedVpcResource bloc dans votre demande de création.

{ ... "privateEndpoint": { "managedVpcResource": { "vpcIdentifier": "vpc-0abc123def456", "subnetIds": ["subnet-0abc123", "subnet-0def456"], "endpointIpAddressType": "IPV4", "securityGroupIds": ["sg-0abc123def"] } }, ... }

Le managedVpcResource bloc accepte les champs suivants :

vpcIdentifier (obligatoire)

L'ID du VPC qui contient votre ressource privée.

subnetIds (obligatoire)

Une liste d'ID de sous-réseau au sein du VPC où la passerelle de ressources sera placée.

endpointIpAddressType (obligatoire)

Type d'adresse IP pour la configuration des ressources. Les valeurs valides sont IPV4 et IPV6.

securityGroupIds (facultatif)

Liste des identifiants de groupes de sécurité à associer à la passerelle de ressources. S'il n'est pas fourni, le groupe de sécurité par défaut du VPC est utilisé.

routingDomain (facultatif)

Un domaine intermédiaire à utiliser comme point de terminaison de configuration des ressources au lieu du domaine cible réel. Utilisez-le lorsque vous souhaitez acheminer le trafic via un composant intermédiaire tel qu'un point de terminaison VPC ou un équilibreur de charge interne. Pour plus d'informations, consultez la section Acheminer le trafic via un domaine intermédiaire.

tags (facultatif)

Balises à appliquer à la passerelle de ressources VPC Lattice gérée. La clé du tag BedrockAgentCoreGatewayManaged est réservée et ne peut pas être spécifiée.

Afficher les ressources gérées

Une fois la ressource créée, appelez l'API Get appropriée (par exemple,GetGatewayTarget) pour afficher les ressources VPC Lattice gérées AgentCore créées en votre nom. Ils sont renvoyés dans le privateEndpointManagedResources champ de la réponse :

{ ... "status": "READY", "privateEndpoint": { "managedVpcResource": { "vpcIdentifier": "vpc-0abc123def456", "subnetIds": ["subnet-0abc123", "subnet-0def456"], "endpointIpAddressType": "IPV4", "securityGroupIds": ["sg-0abc123def"] } }, "privateEndpointManagedResources": [ { "domain": "my-server.internal.example.com", "resourceGatewayArn": "arn:aws:vpc-lattice:us-east-1:123456789012:resourcegateway/rgw-abc123" } ] }

resourceGatewayArnIl s'agit de l'ARN de la passerelle de ressources VPC Lattice AgentCore créée dans votre compte. AgentCore gère le cycle de vie complet de cette ressource : il réutilise la même passerelle de ressources pour les cibles dont les configurations de VPC et de sous-réseau correspondent, et la supprime lorsqu'elle n'est plus utilisée par aucune cible.

Option 2 : ressources en Self-managed treillis

Avec Lattice autogéré, vous créez et gérez vous-même la passerelle de ressources VPC Lattice et la configuration des ressources, puis vous fournissez l'identifiant de configuration des ressources à. AgentCore Utilisez cette option si vous avez déjà configuré des ressources VPC Lattice, si vous devez partager une configuration de ressources entre plusieurs services ou si vous avez besoin de contrôler le cycle de vie des ressources Lattice.

Conditions préalables

Avant de créer une cible de passerelle avec un point de terminaison privé autogéré, effectuez les étapes suivantes :

  • Votre ressource privée (serveur MCP ou API REST) est en cours d'exécution et accessible au sein de votre VPC.

  • Au moins un sous-réseau de votre VPC dispose d'un accès réseau à la ressource privée.

  • Vos groupes de sécurité autorisent le trafic entrant sur le port utilisé par votre ressource privée (généralement le port 443 pour HTTPS).

  • Si votre ressource privée utilise un certificat TLS émis par une autorité de certification privée, vous pouvez placer un Application Load Balancer interne avec un certificat ACM public devant celle-ci. Pour plus d'informations, voir Solution pour les certificats privés : ALB.

Configuration des ressources VPC Lattice pour une connectivité autogérée

  1. Créez une passerelle de ressources dans votre VPC à l'aide de la console VPC Lattice ou de l'API. CreateResourceGateway Associez-le aux sous-réseaux et aux groupes de sécurité qui ont accès à votre ressource privée.

    aws vpc-lattice create-resource-gateway \ --name my-resource-gateway \ --vpc-identifier vpc-0abc123def456 \ --subnet-ids subnet-0abc123 subnet-0def456 \ --security-group-ids sg-0abc123def \ --ip-address-type IPV4
  2. Créez une configuration de ressources qui pointe vers votre point de terminaison privé. Utilisez l'ARN de la passerelle de ressources que vous avez créée à l'étape précédente.

    aws vpc-lattice create-resource-configuration \ --name my-resource-config \ --type SINGLE \ --resource-gateway-identifier <resource-gateway-arn> \ --resource-configuration-definition '{"dnsResource": {"domain": "my-service.internal.example.com", "ipAddressType": "IPV4"}}' \ --port-ranges 443
  3. Si la ressource se trouve dans un compte différent de celui du AgentCore propriétaire, partagez la configuration de la ressource avec le compte du AgentCore propriétaire à l'aide de la AWS RAM :

    aws ram create-resource-share \ --name my-resource-config-share \ --resource-arns <resource-configuration-arn> \ --principals <gateway-owner-account-id>

    Le compte AgentCore propriétaire doit accepter le partage des ressources avant de créer la cible.

  4. Notez l'ARN ou l'ID de configuration des ressources. Vous le fournirez resourceConfigurationIdentifier lors de la création de la cible de la passerelle.

Votre principal IAM a également besoin des autorisations suivantes AgentCore pour associer la configuration des ressources au réseau de AgentCore service en votre nom :

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "vpc-lattice:GetResourceConfiguration", "vpc-lattice:CreateServiceNetworkResourceAssociation", "vpc-lattice:GetServiceNetworkResourceAssociation", "vpc-lattice:ListServiceNetworkResourceAssociations", "vpc-lattice:AssociateViaAWSService" ], "Resource": "*" } ] }

Créez une cible avec un point de terminaison privé autogéré

Pour créer une ressource avec un point de terminaison privé autogéré, incluez le privateEndpoint.selfManagedLatticeResource bloc dans votre demande de création :

{ ... "privateEndpoint": { "selfManagedLatticeResource": { "resourceConfigurationIdentifier": "arn:aws:vpc-lattice:us-east-1:123456789012:resourceconfiguration/rcfg-abc123" } }, ... }

Il resourceConfigurationIdentifier peut s'agir de l'ARN ou de l'ID de la configuration des ressources VPC Lattice. AgentCore utilise vos informations d'identification (via des sessions d'accès direct) pour associer la configuration des ressources au réseau AgentCore de service.

Une fois la ressource créée, la réponse Get API l'inclut resourceAssociationArn dans le privateEndpointManagedResources champ. Si vous créez plusieurs ressources pointant vers la même configuration de ressources, réutilisez AgentCore automatiquement l'association de ressources du réseau de service existante.

Cross-account ressources privées

Vous pouvez vous connecter AgentCore à des ressources privées dans un AWS compte différent de celui qui possède la passerelle. Il s'agit d'un schéma courant pour les équipes de plateforme qui gèrent des passerelles centralisées tandis que les équipes de service individuelles possèdent les ressources privées.

Le compte du propriétaire de la ressource doit partager la configuration des ressources VPC Lattice avec le compte du propriétaire de la passerelle à l'aide de la RAM. AWS Le compte propriétaire de la passerelle fournit ensuite l'identifiant de configuration des ressources partagées lors de la création de la cible de passerelle.

Les étapes suivantes résument la configuration entre comptes :

Configurer une connectivité privée entre comptes

  1. Dans le compte du propriétaire de la ressource : créez une passerelle de ressources VPC Lattice et configurez les ressources comme décrit dans Conditions préalables.

  2. Dans le compte du propriétaire de la ressource : partagez la configuration des ressources avec le compte du propriétaire de la passerelle à l'aide de la AWS RAM :

    aws ram create-resource-share \ --name my-resource-config-share \ --resource-arns <resource-configuration-arn> \ --principals <gateway-owner-account-id>
  3. Dans le compte du propriétaire de la passerelle : acceptez le partage des ressources :

    aws ram accept-resource-share-invitation \ --resource-share-invitation-arn <invitation-arn>
  4. Dans le compte propriétaire de la passerelle : créez la cible de la passerelle à l'aide de l'identifiant de configuration des ressources partagées, comme décrit dans Création d'une cible avec un point de terminaison privé autogéré.

Acheminer le trafic via un domaine intermédiaire

Vous pouvez utiliser le routingDomain champ pour acheminer le trafic via un composant intermédiaire, tel qu'un point de terminaison VPC, un Application Load Balancer interne ou un Network Load Balancer, plutôt que directement vers votre domaine cible. Cela est utile lorsque vous souhaitez consolider plusieurs ressources privées derrière un point d'entrée unique (par exemple, en acheminant plusieurs passerelles d'API privées via un seul point de terminaison VPC afin de réduire le nombre de configurations de ressources et les coûts associés).

Lorsque vous utilisez un domaine de routage, le domaine que vous spécifiez pour votre cible (dans l'URL du point de terminaison MCP ou dans l'URL du serveur OpenAPI) doit être le nom DNS réel de votre ressource. routingDomainIl s'agit d'un domaine distinct AgentCore utilisé pour configurer la configuration des ressources VPC Lattice. Au moment de l'invocation, AgentCore achemine le trafic via le domaine de routage mais envoie des demandes avec le domaine cible réel comme nom d'hôte TLS SNI, afin que votre ressource reçoive les demandes adressées à son domaine réel.

Le domaine de routage peut être n'importe quel domaine qui achemine vers votre ressource privée au sein du VPC. Les options les plus courantes sont les suivantes :

  • Domaine du point de terminaison VPC (VPCE) pour une API Gateway privée : utilisez le nom DNS VPCE comme nom, par exemple. routingDomain <vpce-id>.execute-api.us-east-1.vpce.amazonaws.com Définissez l'URL cible dans votre spécification OpenAPI sur le nom d'hôte privé API Gateway, par exemple. https://<api-id>.execute-api.us-east-1.amazonaws.com AgentCore achemine le trafic via le domaine VPCE mais envoie les demandes avec le nom d'hôte de l'API privée sous forme de TLS SNI, garantissant ainsi un routage correct au sein de votre VPC.

  • Application Load Balancer (ALB) interne : utilisez le nom DNS interne de l'ALB comme, par exemple. routingDomain internal-<alb-name>-<id>.us-west-2.elb.amazonaws.com Définissez l'URL cible sur le nom DNS de la ressource située derrière l'ALB.

  • Internal Network Load Balancer (NLB) : utilisez le nom DNS NLB interne comme, par exemple. routingDomain internal-<nlb-name>-<id>.elb.us-west-2.amazonaws.com Définissez l'URL cible sur le nom DNS de la ressource située derrière le NLB.

Les étapes suivantes décrivent le flux de trafic lorsqu'un domaine de routage est utilisé :

  1. AgentCore résout le nom Lattice-generated DNS du VPC pour atteindre la passerelle de ressources.

  2. Le trafic entre dans votre VPC via la passerelle de ressources, adressée au domaine de routage.

  3. Le domaine de routage (VPCE ou ALB) transmet la demande à votre ressource privée. L'en-tête TLS SNI contient le domaine cible réel, de sorte que votre ressource reçoit la demande avec le nom d'hôte correct.

Exemple : passerelle API privée avec domaine de routage VPCE

L'exemple suivant montre comment créer une cible de passerelle pour une API Gateway privée en utilisant son domaine VPCE comme domaine de routage. L'URL cible est le nom d'hôte privé de l'API Gateway et routingDomain le nom DNS VPCE :

{ "name": "my-private-apigw-target", "privateEndpoint": { "managedVpcResource": { "vpcIdentifier": "vpc-0123456789abcdef0", "subnetIds": ["subnet-0123456789abcdef0", "subnet-0abcdef1234567890"], "endpointIpAddressType": "IPV4", "routingDomain": "<vpce-id>.execute-api.us-east-1.vpce.amazonaws.com" } }, "targetConfiguration": { "mcp": { "openApiSchema": { "inlinePayload": "<OpenAPI spec JSON with server URL matching the public certificate domain, for example https://<api-id>.execute-api.<region>.amazonaws.com>" } } } }
Note

Le routingDomain champ n'est disponible que pour l'managedVpcResourceoption. Pour Lattice autogéré, configurez le domaine de routage directement dans la configuration de vos ressources lorsque vous le créez.

Solution pour les certificats privés : ALB

La sortie VPC nécessite que votre point de terminaison cible dispose d'un certificat TLS approuvé publiquement. Si votre ressource privée utilise un certificat émis par une autorité de certification privée (CA), la solution recommandée consiste à placer un Application Load Balancer (ALB) interne devant votre ressource.

Les étapes suivantes décrivent le flux de trafic :

  1. Définissez l'URL cible vers un domaine qui correspond à votre certificat ACM public (par exemple,https://my-server.my-company.com).

  2. Définissez le routingDomain nom DNS interne de l'ALB (par exemple,internal-my-alb-1234567890.us-west-2.elb.amazonaws.com).

  3. VPC Lattice achemine le trafic vers l'ALB via le domaine de routage. Le TLS SNI est défini surmy-server.my-company.com, ce qui correspond au certificat ACM public de l'ALB, afin que la poignée de main TLS réussisse.

  4. L'ALB met fin au protocole TLS et applique une transformation d'en-tête d'hôte pour réécrire l'en-tête d'hôte depuis le domaine my-server.my-company.com de la ressource privée (par exemple,). my-server.my-company.internal

  5. L'ALB transmet la demande à votre ressource principale via HTTPS à l'aide du certificat privé. Tout le trafic reste à l'intérieur de votre VPC.

Étape 1 : demander un certificat ACM public

Demandez un certificat public à ACM pour un domaine que vous possédez. Ce domaine sera utilisé comme URL cible. Pour obtenir des instructions, consultez la section Request a public certificate dans le guide de l'utilisateur de AWS Certificate Manager.

Étape 2 : Création d'un ALB interne

Créez un Application Load Balancer interne dans le même VPC que votre ressource privée. Pour obtenir des instructions, consultez Create an Application Load Balancer dans le guide de l'utilisateur d'Elastic Load Balancing. Assurez-vous de définir le schéma surinternal.

Étape 3 : Création d'un groupe IP-based cible

Créez un groupe cible ip dont le type de cible pointe vers l'adresse IP de votre ressource privée sur le port 443 (HTTPS) et enregistrez votre ressource privée en tant que cible. Pour obtenir des instructions, consultez la section Création d'un groupe cible dans le guide de l'utilisateur d'Elastic Load Balancing.

Étape 4 : Création d'un écouteur HTTPS avec transformation de l'en-tête de l'hôte

Créez un écouteur HTTPS sur le port 443 à l'aide du certificat ACM public. Ajoutez une règle d'écoute qui transforme l'en-tête Host du domaine public au domaine de la ressource privée avant le transfert.

aws elbv2 create-listener \ --load-balancer-arn <alb-arn> \ --protocol HTTPS \ --port 443 \ --certificates CertificateArn=<acm-certificate-arn> \ --default-actions '[{ "Type": "forward", "TargetGroupArn": "<target-group-arn>", "ForwardConfig": { "TargetGroups": [{"TargetGroupArn": "<target-group-arn>", "Weight": 1}] } }]'

Modifiez ensuite la règle de l'écouteur pour ajouter la transformation de l'en-tête de l'hôte :

aws elbv2 modify-rule \ --rule-arn <default-rule-arn> \ --actions '[{ "Type": "forward", "TargetGroupArn": "<target-group-arn>", "ForwardConfig": { "TargetGroups": [{"TargetGroupArn": "<target-group-arn>", "Weight": 1}] } }]' \ --transforms '[{ "Type": "host-header", "HostHeaderConfig": { "Values": ["my-server.my-company.internal"] } }]'

Étape 5 : Configuration du point de terminaison privé

Utilisez le nom DNS ALB comme URL cible routingDomain et le domaine public de certification comme URL cible.

{ ... "privateEndpoint": { "managedVpcResource": { "vpcIdentifier": "<vpc-id>", "subnetIds": ["<subnet-id-1>", "<subnet-id-2>"], "endpointIpAddressType": "IPV4", "routingDomain": "internal-my-alb-1234567890.us-west-2.elb.amazonaws.com" } }, ... }

L'URL cible de votre configuration cible doit utiliser https://my-server.my-company.com (le domaine de certification public), et non le domaine privé.

Service-linked rôle pour la sortie du VPC

Lorsque vous créez une cible de passerelle avec un point de terminaison privé géré (managedVpcResource), AgentCore utilise le rôle AWSServiceRoleForBedrockAgentCoreGatewayNetwork lié au service pour créer et gérer des passerelles de ressources VPC Lattice dans votre compte. Ce rôle est créé automatiquement la première fois que vous créez une cible de point de terminaison privée gérée, à condition que votre principal IAM dispose des iam:CreateServiceLinkedRole autorisations requises.

Le rôle lié à un service présente les principales caractéristiques suivantes :

  • Il peut uniquement créer et supprimer des passerelles de ressources VPC Lattice étiquetées avec. BedrockAgentCoreGatewayManaged: true Il ne peut pas modifier les passerelles de ressources que vous créez et gérez vous-même.

  • AgentCore réutilise la même passerelle de ressources gérées pour les cibles qui partagent la même configuration de VPC, de sous-réseau, de groupe de sécurité et de type d'adresse IP. La passerelle de ressources est supprimée uniquement lorsqu'aucune cible de passerelle ne l'utilise.

  • Les configurations de ressources pour Lattice géré sont créées dans le compte AgentCore de service, et non dans votre compte. Vous ne les verrez pas dans votre console VPC Lattice.

Pour le document de politique complet et les instructions relatives à la création, à la modification et à la suppression de ce rôle, voir Rôle lié au service Gateway.

État de la cible et résolution des problèmes

Une fois que vous avez créé une ressource avec un point de terminaison privé, la ressource passe par un CREATING état lors de la configuration AgentCore des ressources VPC Lattice et de l'établissement de l'association du réseau de services. Vous pouvez surveiller le statut en appelant l'API Get appropriée (par exemple,GetGatewayTarget) et en vérifiant les statusReasons champs status et.

Le tableau suivant décrit les valeurs d'état courantes et leur signification :

Statut Description

CREATING

AgentCore configure les ressources VPC Lattice et établit l'association du réseau de services. Cela peut prendre jusqu'à quelques minutes.

READY

Le point de terminaison privé est configuré et la cible est prête à recevoir des demandes.

FAILED

La création de la cible a échoué. Consultez le statusReasons champ pour plus de détails. Les causes courantes incluent des autorisations IAM manquantes ou un identifiant de configuration de ressource non valide.

Le tableau suivant décrit les problèmes courants et leurs solutions :

Problème Solution

La création de la cible échoue en raison d'une erreur d'autorisation IAM

Assurez-vous que votre principal IAM dispose de l'iam:CreateServiceLinkedRoleautorisation pourbedrock-agentcore.amazonaws.com. Pour Lattice autogéré, assurez-vous que vous disposez des autorisations VPC Lattice requises répertoriées dans la section Conditions préalables.

Les appels d'outils échouent avec une erreur de connexion après la création de la cible

Vérifiez que les groupes de sécurité associés à la passerelle de ressources autorisent le trafic entrant sur le port utilisé par votre ressource privée. Vérifiez également que la ressource privée est en cours d'exécution et accessible depuis les sous-réseaux spécifiés.

Les appels d'outils échouent avec une erreur TLS

Si votre ressource privée utilise un certificat émis par une autorité de certification privée, assurez-vous que le nom alternatif du sujet (SAN) du certificat correspond au domaine indiqué dans l'URL de votre point de terminaison MCP ou de votre serveur OpenAPI. Si vous utilisez un domaine de routage, assurez-vous que le domaine de routage transmet correctement le protocole TLS à votre ressource privée.

Configuration des ressources introuvable (autogérée)

Pour les scénarios entre comptes, assurez-vous que le partage des ressources AWS RAM a été accepté dans le compte du propriétaire de la passerelle avant de créer la cible.

Limites et considérations

Tenez compte des limites suivantes lorsque vous utilisez la sortie VPC pour : AgentCore

  • Cross-account: la connectivité Cross-account privée nécessite l'option de ressources Lattice autogérée. Les ressources VPC gérées ne prennent pas en charge les scénarios entre comptes.

  • Configuration TTL DNS : VPC IP-based Lattice utilise le routage. Assurez-vous que les TTL DNS pour votre domaine de configuration de ressources sont correctement configurés afin que les modifications d'adresse IP lors des déploiements progressifs n'entraînent pas de perturbation de la connectivité.