

# Conecte-se a recursos privados em sua VPC usando o VPC Lattice
<a name="vpc-egress-private-endpoints"></a>

O Amazon Bedrock AgentCore oferece suporte à conectividade privada com recursos hospedados em sua AWS VPC ou em ambientes locais conectados à sua VPC, como servidores MCP privados, APIs REST internas ou bancos de dados, sem expor esses serviços à Internet pública.

A conectividade privada é estabelecida usando gateways de recursos e configurações de recursos do [Amazon VPC Lattice](https://docs.aws.amazon.com/vpc-lattice/latest/ug/what-is-vpc-lattice.html). Para obter detalhes sobre os dois modos compatíveis (rede gerenciada e autogerenciada), consulte Modos de saída de [VPC](#lattice-vpc-egress-compare-modes) compatíveis.

**Topics**
+ [Principais conceitos](#lattice-vpc-egress-concepts)
+ [Serviços Amazon Bedrock AgentCore compatíveis](#lattice-vpc-egress-supported-services)
+ [Modos de saída de VPC compatíveis](#lattice-vpc-egress-compare-modes)
+ [Opção 1: recursos gerenciados de VPC](#lattice-vpc-egress-managed-lattice)
+ [Opção 2: Self-managed recursos de rede](#lattice-vpc-egress-self-managed-lattice)
+ [Roteie o tráfego por meio de um domínio intermediário](#lattice-vpc-egress-routing-domain)
+ [Solução alternativa para certificados privados: ALB](#lattice-vpc-egress-private-certs)
+ [Service-linked função para saída de VPC](#lattice-vpc-egress-slr)
+ [Status do alvo e solução de problemas](#lattice-vpc-egress-target-status)
+ [Limitações e considerações](#lattice-vpc-egress-limitations)

## Principais conceitos
<a name="lattice-vpc-egress-concepts"></a>

 **Gateway de recursos**   
Um gateway de recursos do Amazon VPC Lattice é o ponto de entrada na sua VPC. Ele está associado a uma ou mais sub-redes e grupos de segurança em sua VPC e atua como o ponto de entrada da rede para o tráfego de. AgentCore Quando você usa o Managed Lattice, AgentCore cria e gerencia esse recurso em seu nome.

 **Configuração de recursos**   
Uma configuração de recurso representa um endpoint privado específico, um endereço IP ou nome DNS, dentro da sua VPC. Ele é anexado a um gateway de recursos e define qual recurso AgentCore pode ser acessado. Quando você usa o Managed Lattice, AgentCore cria esse recurso na conta AgentCore de serviço em seu nome.

 **Associação de recursos de rede de serviços**   
Uma associação de recursos de rede de serviços conecta uma configuração de recursos à rede AgentCore de serviços, permitindo que o AgentCore serviço invoque seu endpoint privado. AgentCore sempre cria e gerencia essa associação em seu nome, independentemente de você usar o Lattice gerenciado ou autogerenciado.

 **Domínio de roteamento**   
Um campo opcional que especifica um domínio intermediário AgentCore usado como domínio de configuração de recursos em vez do domínio de destino real. Isso é útil quando você deseja rotear o tráfego por meio de um componente intermediário, como um VPC endpoint ou um balanceador de carga interno — por exemplo, para consolidar vários gateways de API privados em um único VPC endpoint, reduzindo o número de configurações de recursos e os custos associados. O AgentCore serviço continua invocando o domínio de destino real usando a substituição de SNI. Para obter mais informações, consulte [Rotear o tráfego por meio de um domínio intermediário](#lattice-vpc-egress-routing-domain).

## Serviços Amazon Bedrock AgentCore compatíveis
<a name="lattice-vpc-egress-supported-services"></a>

Os seguintes AgentCore serviços do Amazon Bedrock oferecem suporte à saída de VPC com o VPC Lattice:

 **AgentCore Gateway**   
AgentCore O Gateway oferece suporte a endpoints privados para servidores MCP e tipos de destino OpenAPI. Para obter detalhes sobre como configurar a saída de VPC para cada tipo de destino, consulte [Configurar a saída de VPC do Amazon Bedrock AgentCore Gateway para destinos de gateway](gateway-vpc-egress.md).

 **AgentCore Identidade**   
AgentCore O Identity oferece suporte a endpoints privados para conexão com provedores de identidade OAuth 2.0 hospedados em VPC para autorização JWT de entrada e provedores de credenciais OAuth de saída. Para obter detalhes, consulte [Connect to private identity providers](identity-private-idp.md).

## Modos de saída de VPC compatíveis
<a name="lattice-vpc-egress-compare-modes"></a>

O Amazon Bedrock AgentCore oferece suporte a dois modos para configurar a conectividade do VPC Lattice:
+  **Recursos gerenciados de VPC** — O Amazon Bedrock AgentCore cria e gerencia o gateway de recursos VPC Lattice e a configuração de recursos em seu nome. Você fornece sua VPC, sub-redes e grupos de segurança opcionais. Essa é a abordagem mais simples para conectividade VPC em conta que se conecta às arquiteturas de rede existentes, como hub-and-spoke.
**nota**  
Você não precisa de permissões do VPC Lattice IAM, alterações de SCP ou processos de aprovação adicionais para usar essa opção. O Amazon Bedrock AgentCore gerencia todos os recursos do VPC Lattice em seu nome.
+  **Self-managed Recursos do Lattice** — Você mesmo cria e gerencia o gateway de recursos e a configuração de recursos do VPC Lattice. Essa abordagem fornece governança e visibilidade aprimoradas: você pode ver exatamente quais serviços estão conectados a quais domínios, quem tem acesso e revogar conexões em um nível granular. Ele também permite a conectividade direta entre contas via AWS RAM sem exigir emparelhamento de VPC ou Transit Gateways.

A tabela a seguir resume as principais diferenças:


| Dimensão | Recursos gerenciados de VPC | Self-managed Recursos de treliça | 
| --- | --- | --- | 
| Dependência adicional de serviço | Não é necessária a integração ou a lista de permissões do VPC Lattice. O VPC Lattice é usado internamente pelo Amazon AgentCore Bedrock como um detalhe de implementação. Você não precisa de políticas de IAM do VPC Lattice, alterações de SCP ou processos de aprovação adicionais. Você só precisa de permissões padrão do Amazon EC2 e da capacidade de criar uma função vinculada ao serviço. | Sim. Você cria e gerencia recursos do VPC Lattice diretamente, o que requer permissões do VPC Lattice IAM (por exemplo,, e). `vpc-lattice:CreateResourceGateway` `vpc-lattice:CreateResourceConfiguration` `vpc-lattice:CreateServiceNetworkResourceAssociation` Talvez seja necessário atualizar os SCPs ou solicitar aprovação se sua organização restringir o acesso ao VPC Lattice. | 
| Governança e visibilidade | O único recurso em sua conta é um gateway de recursos, que é efetivamente uma interface de rede (ENI) em sua VPC. Esse é um recurso somente de leitura totalmente gerenciado pelo Amazon Bedrock AgentCore — você não pode modificá-lo, configurá-lo ou interagir com ele. | Visibilidade total dos gateways de recursos, configurações de recursos, associações de rede de serviços e domínios conectados. Você possui e gerencia todos os recursos e pode auditar conexões e revogar o acesso em um nível granular. | 
| Complexidade | Simples — forneça VPC, sub-redes e grupos de segurança. O Amazon Bedrock AgentCore gerencia o resto. | Avançado — você mesmo cria e gerencia gateways de recursos e configurações de recursos do VPC Lattice. | 
| Cross-account conectividade | Sem compatibilidade. Use com arquiteturas de rede existentes, como hub-and-spoke (VPC peering ou AWS Transit Gateway) para cenários entre contas ou entre VPCs. | Suportado via AWS RAM. Permite a conectividade direta entre contas sem exigir emparelhamento de VPC ou gateways de trânsito. | 
| Preços do VPC Lattice | Somente cobranças de processamento de dados (por GB processado por meio do gateway de recursos). | Cobrança por hora por recurso de VPC adicionado a uma rede de serviços, mais taxas de processamento de dados (por GB). | 
| Ciclo de vida dos recursos | O Amazon Bedrock AgentCore cria, reutiliza e exclui gateways de recursos em seu nome. | Você possui o ciclo de vida completo dos gateways de recursos e das configurações de recursos. | 
| Consumo e taxa de transferência de IP | Cada gateway de recursos gerenciados consome 1 endereço IP por sub-rede. Isso não é configurável. | Quando usado com o Amazon Bedrock AgentCore, consome 1 endereço IP por sub-rede. Se também estiver conectado a outras redes de serviços VPC Lattice, consome IPs adicionais com base no `ipv4AddressesPerEni` valor no gateway de recursos. A combinação de intervalo de portas e endereços IP determina o número máximo de conexões simultâneas para essa associação de recursos de rede de serviços. Observe que há um período de recarga da porta de 350 segundos após o término da conexão, antes que a porta possa ser reutilizada. | 

Para obter detalhes sobre os preços do VPC Lattice, consulte os preços do Amazon [VPC](https://aws.amazon.com/vpc/lattice/pricing/) Lattice.

## Opção 1: recursos gerenciados de VPC
<a name="lattice-vpc-egress-managed-lattice"></a>

Com os recursos gerenciados da VPC, você fornece informações sobre a VPC, a sub-rede e o grupo de segurança opcional. AgentCore trata da criação e do gerenciamento do ciclo de vida do gateway de recursos do VPC Lattice e da configuração de recursos em seu nome. O gateway de recursos gerenciados é um invólucro em torno dos ENIs em sua VPC. Você não pode modificar, configurar ou interagir com ele. AgentCore possui todo o seu ciclo de vida, incluindo criação, reutilização e exclusão.

**nota**  
Você não precisa de permissões do VPC Lattice IAM, alterações de SCP ou processos de aprovação adicionais para usar recursos gerenciados de VPC, porque o Amazon AgentCore Bedrock usa o Lattice como uma dependência interna e qualquer gateway de recursos do Lattice é somente de leitura para o cliente.

AgentCore usa a função `AWSServiceRoleForBedrockAgentCoreGatewayNetwork` vinculada ao serviço para criar e gerenciar gateways de recursos do VPC Lattice em sua conta. Essa função é criada automaticamente na primeira vez que você cria um destino de gateway com um endpoint privado gerenciado. Para obter mais informações sobre essa função, consulte Função [vinculada ao serviço do Gateway](service-linked-roles.md#gateway-service-linked-role).

### Pré-requisitos
<a name="lattice-vpc-egress-managed-lattice-prereqs"></a>

Antes de criar um destino de gateway com um endpoint privado gerenciado, verifique o seguinte:
+ Seu recurso privado (servidor MCP ou API REST) está em execução e acessível em sua VPC.
+ Você tem pelo menos uma sub-rede em sua VPC que tem acesso de rede ao recurso privado.
+ Seus grupos de segurança permitem tráfego de entrada na porta usada pelo seu recurso privado (normalmente a porta 443 para HTTPS).
+ Seu diretor do IAM tem `iam:CreateServiceLinkedRole` permissão para`bedrock-agentcore.amazonaws.com`, portanto, AgentCore pode criar a função vinculada ao serviço em seu nome, caso ela ainda não exista. Para a política de IAM necessária, consulte Papel [vinculado ao serviço do Gateway](service-linked-roles.md#gateway-service-linked-role).
+ Seu diretor do IAM tem as seguintes permissões do Amazon EC2, que são necessárias AgentCore para configurar o gateway de recursos VPC Lattice em sua VPC:
  +  `ec2:CreateNetworkInterface` 
  +  `ec2:DescribeVpcs` 
  +  `ec2:DescribeSecurityGroups` 
  +  `ec2:DescribeSubnets` 
+ Se seu recurso privado usa um certificado TLS emitido por uma autoridade de certificação privada, você pode colocar um Application Load Balancer interno com um certificado ACM público na frente dele. Para obter mais informações, consulte [Solução alternativa para certificados privados: ALB](#lattice-vpc-egress-private-certs).

### Crie um destino com um endpoint privado gerenciado
<a name="lattice-vpc-egress-managed-lattice-create"></a>

Para criar um recurso com um endpoint privado gerenciado, inclua o `privateEndpoint.managedVpcResource` bloco na sua solicitação de criação.

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

O `managedVpcResource` bloco aceita os seguintes campos:

 `vpcIdentifier`(obrigatório)  
O ID da VPC que contém seu recurso privado.

 `subnetIds`(obrigatório)  
Uma lista de IDs de sub-rede na VPC em que o gateway de recursos será colocado.

 `endpointIpAddressType`(obrigatório)  
O tipo de endereço IP para a configuração do recurso. Os valores válidos são `IPV4` e `IPV6`.

 `securityGroupIds` (opcional)  
Uma lista de IDs de grupos de segurança a serem associados ao gateway de recursos. Se não for fornecido, o grupo de segurança padrão para a VPC será usado.

 `routingDomain` (opcional)  
Um domínio intermediário a ser usado como ponto final de configuração de recursos em vez do domínio de destino real. Use isso quando quiser rotear o tráfego por meio de um componente intermediário, como um VPC endpoint ou balanceador de carga interno. Para obter mais informações, consulte [Rotear o tráfego por meio de um domínio intermediário](#lattice-vpc-egress-routing-domain).

 `tags` (opcional)  
Tags a serem aplicadas ao gateway de recursos gerenciado do VPC Lattice. A chave da tag `BedrockAgentCoreGatewayManaged` está reservada e não pode ser especificada.

### Exibir recursos gerenciados
<a name="lattice-vpc-egress-managed-lattice-response"></a>

Depois que o recurso for criado, chame a API Get relevante (por exemplo,`GetGatewayTarget`) para ver os recursos gerenciados do VPC Lattice AgentCore criados em seu nome. Eles são retornados no `privateEndpointManagedResources` campo da resposta:

```
{
  ...
  "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"
    }
  ]
}
```

Esse `resourceGatewayArn` AgentCore é o ARN do gateway de recursos do VPC Lattice criado em sua conta. AgentCore gerencia todo o ciclo de vida desse recurso: ele reutiliza o mesmo gateway de recursos para destinos com configurações de VPC e sub-rede correspondentes e o exclui quando não é mais usado por nenhum destino.

## Opção 2: Self-managed recursos de rede
<a name="lattice-vpc-egress-self-managed-lattice"></a>

Com o Lattice autogerenciado, você mesmo cria e gerencia o gateway de recursos e a configuração de recursos do VPC Lattice e, em seguida, fornece o identificador de configuração do recurso a. AgentCore Use essa opção se você já tiver recursos do VPC Lattice configurados, precisar compartilhar uma configuração de recursos entre vários serviços ou precisar de controle sobre o ciclo de vida dos recursos do Lattice.

### Pré-requisitos
<a name="lattice-vpc-egress-self-managed-lattice-prereqs"></a>

Antes de criar um destino de gateway com um endpoint privado autogerenciado, conclua as seguintes etapas:
+ Seu recurso privado (servidor MCP ou API REST) está em execução e acessível em sua VPC.
+ Você tem pelo menos uma sub-rede em sua VPC que tem acesso de rede ao recurso privado.
+ Seus grupos de segurança permitem tráfego de entrada na porta usada pelo seu recurso privado (normalmente a porta 443 para HTTPS).
+ Se seu recurso privado usa um certificado TLS emitido por uma autoridade de certificação privada, você pode colocar um Application Load Balancer interno com um certificado ACM público na frente dele. Para obter mais informações, consulte [Solução alternativa para certificados privados: ALB](#lattice-vpc-egress-private-certs).

 **Configurar recursos do VPC Lattice para conectividade autogerenciada** 

1.  **Crie um gateway de recursos** na sua VPC usando o console do VPC Lattice ou a API. `CreateResourceGateway` Associe-o às sub-redes e grupos de segurança que têm acesso ao seu recurso privado.

   ```
   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
   ```

1.  **Crie uma configuração de recursos** que aponte para seu endpoint privado. Use o ARN do gateway de recursos que você criou na etapa anterior.

   ```
   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
   ```

1.  **Se o recurso estiver em uma conta diferente da conta** do AgentCore proprietário, compartilhe a configuração do recurso com a conta do AgentCore proprietário usando a AWS RAM:

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

   A conta do AgentCore proprietário deve aceitar o compartilhamento de recursos antes de criar a meta.

1. Observe o ARN ou ID da configuração do recurso. Você fornecerá isso `resourceConfigurationIdentifier` ao criar o destino do gateway.

Seu diretor do IAM também precisa das seguintes permissões AgentCore para permitir associar a configuração do recurso à rede AgentCore de serviços em seu nome:

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

### Crie um destino com um endpoint privado autogerenciado
<a name="lattice-vpc-egress-self-managed-lattice-create"></a>

Para criar um recurso com um endpoint privado autogerenciado, inclua o `privateEndpoint.selfManagedLatticeResource` bloco na sua solicitação de criação:

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

`resourceConfigurationIdentifier`Pode ser o ARN ou o ID da configuração do recurso VPC Lattice. AgentCore usa suas credenciais (por meio de [sessões de acesso direto](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_forward_access_sessions.html)) para associar a configuração do recurso à rede AgentCore de serviços.

Depois que o recurso é criado, a resposta da API Get inclui o `resourceAssociationArn` no `privateEndpointManagedResources` campo. Se você criar vários recursos apontando para a mesma configuração de recursos, AgentCore reutilizará automaticamente a associação de recursos de rede de serviços existente.

### Cross-account recursos privados
<a name="lattice-vpc-egress-cross-account"></a>

Você pode se AgentCore conectar a recursos privados em uma AWS conta diferente da conta proprietária do gateway. Esse é um padrão comum para equipes de plataforma que gerenciam gateways centralizados, enquanto equipes de serviço individuais possuem os recursos privados.

A conta do proprietário do recurso deve compartilhar a configuração do recurso VPC Lattice com a conta do proprietário do gateway usando RAM. AWS A conta do proprietário do gateway então fornece o identificador de configuração do recurso compartilhado ao criar o destino do gateway.

As etapas a seguir resumem a configuração de várias contas:

 **Configurar a conectividade privada entre contas** 

1.  **Na conta do proprietário do recurso**[: crie um gateway de recursos do VPC Lattice e uma configuração de recursos conforme descrito em Pré-requisitos.](#lattice-vpc-egress-self-managed-lattice-prereqs)

1.  **Na conta do proprietário do recurso**: compartilhe a configuração do recurso com a conta do proprietário do gateway usando a AWS RAM:

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

1.  **Na conta do proprietário do gateway**: aceite o compartilhamento de recursos:

   ```
   aws ram accept-resource-share-invitation \
     --resource-share-invitation-arn <invitation-arn>
   ```

1.  **Na conta do proprietário do gateway**: Crie o destino do gateway usando o identificador de configuração de recursos compartilhados, conforme descrito em [Criar um destino com um endpoint privado autogerenciado](#lattice-vpc-egress-self-managed-lattice-create).

## Roteie o tráfego por meio de um domínio intermediário
<a name="lattice-vpc-egress-routing-domain"></a>

Você pode usar o `routingDomain` campo para rotear o tráfego por meio de um componente intermediário, como um VPC endpoint, Application Load Balancer interno ou Network Load Balancer, em vez de diretamente para seu domínio de destino. Isso é útil quando você deseja consolidar vários recursos privados em um único ponto de entrada (por exemplo, rotear vários gateways de API privados por meio de um único VPC endpoint para reduzir o número de configurações de recursos e os custos associados).

Ao usar um domínio de roteamento, o domínio que você especifica para seu destino (na URL do endpoint MCP ou na URL do servidor OpenAPI) deve ser o nome DNS real do seu recurso. `routingDomain`É um domínio separado AgentCore usado para definir a configuração de recursos do VPC Lattice. No momento da invocação, AgentCore roteia o tráfego pelo domínio de roteamento, mas envia solicitações com o domínio de destino real como nome de host TLS SNI, para que seu recurso receba solicitações endereçadas ao domínio real.

O domínio de roteamento pode ser qualquer domínio roteado para seu recurso privado dentro da VPC. As opções comuns incluem:
+  **Domínio VPC endpoint (VPCE) para um API Gateway privado** — use o nome DNS do VPCE como, por exemplo. `routingDomain` `<vpce-id>.execute-api.us-east-1.vpce.amazonaws.com` Defina o URL de destino em sua especificação do OpenAPI como o nome de host privado do API Gateway, por exemplo. `https://<api-id>.execute-api.us-east-1.amazonaws.com` AgentCore roteia o tráfego pelo domínio VPCE, mas envia solicitações com o nome de host da API privada como TLS SNI, garantindo o roteamento correto em sua VPC.
+  **Internal Application Load Balancer (ALB)** - Use o nome DNS interno do ALB como, por exemplo. `routingDomain` `internal-<alb-name>-<id>.us-west-2.elb.amazonaws.com` Defina o URL de destino como o nome DNS do recurso por trás do ALB.
+  **Internal Network Load Balancer (NLB)** - Use o nome DNS do NLB interno como, por exemplo. `routingDomain` `internal-<nlb-name>-<id>.elb.us-west-2.amazonaws.com` Defina o URL de destino como o nome DNS do recurso por trás do NLB.

As etapas a seguir descrevem o fluxo de tráfego quando um domínio de roteamento é usado:

1. AgentCore resolve o nome DNS da Lattice-generated VPC para acessar o gateway de recursos.

1. O tráfego entra na sua VPC por meio do gateway de recursos, endereçado ao domínio de roteamento.

1. O domínio de roteamento (VPCE ou ALB) encaminha a solicitação para seu recurso privado. O cabeçalho TLS SNI contém o domínio de destino real, então seu recurso recebe a solicitação com o nome de host correto.

### Exemplo: Gateway de API privado com domínio de roteamento VPCE
<a name="lattice-vpc-egress-routing-domain-setup"></a>

O exemplo a seguir mostra como criar um destino de gateway para um API Gateway privado usando seu domínio VPCE como domínio de roteamento. O URL de destino é o nome de host privado do API Gateway e o `routingDomain` nome DNS do 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>"
      }
    }
  }
}
```

**nota**  
O `routingDomain` campo só está disponível para a `managedVpcResource` opção. Para o Lattice autogerenciado, configure o domínio de roteamento diretamente na configuração do recurso ao criá-lo.

## Solução alternativa para certificados privados: ALB
<a name="lattice-vpc-egress-private-certs"></a>

A saída de VPC exige que seu endpoint de destino tenha um certificado TLS publicamente confiável. Se seu recurso privado usa um certificado emitido por uma autoridade de certificação (CA) privada, a solução alternativa recomendada é colocar um Application Load Balancer (ALB) interno na frente do seu recurso.

As etapas a seguir descrevem o fluxo de tráfego:

1. Defina o URL de destino como um domínio que corresponda ao seu certificado público do ACM (por exemplo,`https://my-server.my-company.com`).

1. `routingDomain`Defina o como o nome DNS interno do ALB (por exemplo,`internal-my-alb-1234567890.us-west-2.elb.amazonaws.com`).

1. O VPC Lattice roteia o tráfego para o ALB por meio do domínio de roteamento. O TLS SNI está definido como`my-server.my-company.com`, que corresponde ao certificado ACM público do ALB, então o handshake TLS é bem-sucedido.

1. O ALB encerra o TLS e aplica uma transformação do cabeçalho do host para reescrever o cabeçalho do Host `my-server.my-company.com` para o domínio do recurso privado (por exemplo,). `my-server.my-company.internal`

1. O ALB encaminha a solicitação para seu recurso de back-end via HTTPS usando o certificado privado. Todo o tráfego permanece dentro da sua VPC.

 **Etapa 1: Solicitar um certificado público do ACM** 

Solicite um certificado público do ACM para um domínio que você possui. Esse domínio será usado como URL de destino. Para obter instruções, consulte [Solicitar um certificado público](https://docs.aws.amazon.com/acm/latest/userguide/gs-acm-request-public.html) no Guia do usuário do AWS Certificate Manager.

 **Etapa 2: criar um ALB interno** 

Crie um Application Load Balancer interno na mesma VPC do seu recurso privado. Para obter instruções, consulte [Create an Application Load Balancer](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/create-application-load-balancer.html) no Guia do usuário do Elastic Load Balancing. Certifique-se de definir o esquema como`internal`.

 **Etapa 3: criar um IP-based grupo-alvo** 

Crie um grupo-alvo com o tipo de destino `ip` que aponte para o endereço IP do seu recurso privado na porta 443 (HTTPS) e registre seu recurso privado como destino. Para obter instruções, consulte [Criar um grupo-alvo](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/create-target-group.html) no Guia do usuário do Elastic Load Balancing.

 **Etapa 4: criar um ouvinte HTTPS com transformação do cabeçalho do host** 

Crie um ouvinte HTTPS na porta 443 usando o certificado público do ACM. Adicione uma regra de ouvinte que transforme o cabeçalho Host do domínio público para o domínio do recurso privado antes do encaminhamento.

```
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}]
    }
  }]'
```

Em seguida, modifique a regra do ouvinte para adicionar a transformação do cabeçalho do host:

```
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"]
    }
  }]'
```

 **Etapa 5: configurar o endpoint privado** 

Use o nome DNS do ALB como o `routingDomain` e o domínio público do certificado como o URL de destino.

```
{
  ...
  "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"
    }
  },
  ...
}
```

O URL de destino em sua configuração de destino deve usar `https://my-server.my-company.com` (o domínio público do certificado), não o domínio privado.

## Service-linked função para saída de VPC
<a name="lattice-vpc-egress-slr"></a>

Ao criar um destino de gateway com um endpoint privado gerenciado (`managedVpcResource`), AgentCore usa a função `AWSServiceRoleForBedrockAgentCoreGatewayNetwork` vinculada ao serviço para criar e gerenciar gateways de recursos do VPC Lattice em sua conta. Essa função é criada automaticamente na primeira vez que você cria um destino de endpoint privado gerenciado, desde que seu diretor do IAM tenha a `iam:CreateServiceLinkedRole` permissão necessária.

A função vinculada ao serviço tem as seguintes características principais:
+ Ele só pode criar e excluir gateways de recursos do VPC Lattice marcados com. `BedrockAgentCoreGatewayManaged: true` Ele não pode modificar os gateways de recursos que você mesmo cria e gerencia.
+ AgentCore reutiliza o mesmo gateway de recursos gerenciados para destinos que compartilham a mesma configuração de VPC, sub-rede, grupo de segurança e tipo de endereço IP. O gateway de recursos é excluído somente quando nenhum destino do gateway o está usando.
+ As configurações de recursos para o Lattice gerenciado são criadas na conta AgentCore de serviço, não na sua conta. Você não os verá no console do VPC Lattice.

Para obter o documento de política completo e as instruções para criar, editar e excluir essa função, consulte Função [vinculada ao serviço do Gateway](service-linked-roles.md#gateway-service-linked-role).

## Status do alvo e solução de problemas
<a name="lattice-vpc-egress-target-status"></a>

Depois de criar um recurso com um endpoint privado, o recurso passa por um `CREATING` estado enquanto AgentCore configura os recursos do VPC Lattice e estabelece a associação da rede de serviços. Você pode monitorar o status chamando a API Get relevante (por exemplo,`GetGatewayTarget`) e verificando os `status` `statusReasons` campos e.

A tabela a seguir descreve os valores de status comuns e seus significados:


| Status | Description | 
| --- | --- | 
|  `CREATING`  | AgentCore está configurando os recursos do VPC Lattice e estabelecendo a associação da rede de serviços. Isso pode levar alguns minutos. | 
|  `READY`  | O endpoint privado está configurado e o destino está pronto para receber solicitações. | 
|  `FAILED`  | Falha na criação do alvo. Verifique o `statusReasons` campo para obter detalhes. As causas comuns incluem a falta de permissões do IAM ou um identificador de configuração de recurso inválido. | 

A tabela a seguir descreve problemas comuns e suas soluções:


| Problema | Solução | 
| --- | --- | 
| A criação do alvo falha com um erro de permissão do IAM | Certifique-se de que seu diretor do IAM tenha `iam:CreateServiceLinkedRole` permissão para`bedrock-agentcore.amazonaws.com`. [Para o Lattice autogerenciado, verifique se você tem as permissões necessárias do VPC Lattice listadas em Pré-requisitos.](#lattice-vpc-egress-self-managed-lattice-prereqs) | 
| As invocações de ferramentas falham com um erro de conexão após a criação do destino | Verifique se os grupos de segurança associados ao gateway de recursos permitem tráfego de entrada na porta usada pelo seu recurso privado. Verifique também se o recurso privado está em execução e pode ser acessado nas sub-redes especificadas. | 
| As invocações de ferramentas falham com um erro de TLS | Se seu recurso privado usa um certificado emitido por uma CA privada, certifique-se de que o Nome Alternativo do Assunto (SAN) do certificado corresponda ao domínio em seu endpoint MCP ou URL do servidor OpenAPI. Se estiver usando um domínio de roteamento, certifique-se de que o domínio de roteamento encaminhe corretamente o TLS para seu recurso privado. | 
| Configuração de recursos não encontrada (autogerenciada) | Para cenários entre contas, certifique-se de que o compartilhamento de recursos de AWS RAM tenha sido aceito na conta do proprietário do gateway antes de criar o destino. | 

## Limitações e considerações
<a name="lattice-vpc-egress-limitations"></a>

Esteja ciente das seguintes limitações ao usar a saída de VPC para: AgentCore
+  **Cross-account**: a conectividade Cross-account privada requer a opção de recursos autogerenciados do Lattice. Os recursos gerenciados de VPC não oferecem suporte a cenários entre contas.
+  **Configuração DNS TTL:** o VPC Lattice usa roteamento. IP-based Certifique-se de que os TTLs de DNS do seu domínio de configuração de recursos estejam configurados adequadamente para que as alterações no endereço IP durante implantações contínuas não causem interrupções na conectividade.