View a markdown version of this page

Conectando-se a ferramentas hospedadas de forma privada - AWS DevOps Agente

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Conectando-se a ferramentas hospedadas de forma privada

Visão geral das conexões privadas

AWS DevOps O agente pode ser estendido com ferramentas personalizadas do Model Context Protocol (MCP) e outras integrações que dão ao agente acesso a sistemas internos, como registros de pacotes privados, plataformas de observabilidade auto-hospedadas APIs, documentação interna e instâncias de controle de origem (consulte:). Configurando recursos para AWS DevOps o Agent Esses serviços geralmente são executados dentro de uma Amazon Virtual Private Cloud (Amazon VPC) com acesso restrito ou nenhum acesso público à Internet, o que significa que o AWS DevOps Agente não pode acessá-los por padrão.

As conexões privadas do AWS DevOps Agent permitem que você conecte com segurança seu Espaço do Agente aos serviços em execução na sua VPC sem expô-los à Internet pública. As conexões privadas funcionam com qualquer integração que precise alcançar um endpoint privado, incluindo servidores MCP, instâncias Grafana ou Splunk auto-hospedadas e sistemas GitHub de controle de origem, como Enterprise Server e Self-Managed. GitLab

nota

Se suas ferramentas hospedadas de forma privada fizerem solicitações de saída para o AWS DevOps Agente de dentro da sua VPC, esse tráfego também poderá ser protegido usando um VPC Endpoint para que ele permaneça na rede. AWS Por exemplo, isso pode ser usado com ferramentas que acionam o DevOps Agente por meio de eventos de webhook (consulte:Invocando o DevOps Agente por meio do Webhook). Para obter mais informações, consulte VPC endpoints (AWS PrivateLink).

Como as conexões privadas funcionam

Uma conexão privada cria um caminho de rede seguro entre o AWS DevOps Agente e um recurso de destino em sua VPC. Nos bastidores, o AWS DevOps Agent usa o Amazon VPC Lattice para estabelecer esse caminho seguro de conectividade privada. O VPC Lattice é um serviço de rede de aplicativos que permite conectar, proteger e monitorar a comunicação entre aplicativos VPCs, contas e tipos de computação, sem gerenciar a infraestrutura de rede subjacente.

Quando você cria uma conexão privada, ocorre o seguinte:

  • Você fornece a VPC, as sub-redes e (opcionalmente) os grupos de segurança que têm conectividade de rede com seu serviço de destino.

  • AWS DevOps O agente cria um gateway de recursos gerenciado por serviços e provisiona suas interfaces de rede elástica (ENIs) nas sub-redes que você especificou.

  • O agente usa o gateway de recursos para rotear o tráfego para o endereço IP ou nome DNS do serviço de destino pelo caminho da rede privada.

O gateway de recursos é totalmente gerenciado pelo AWS DevOps Agente e aparece como um recurso somente para leitura em sua conta (nomeadoaidevops-{your-private-connection-name}). Você não precisa configurá-lo ou mantê-lo. Os únicos recursos criados em sua VPC estão ENIs nas sub-redes que você especifica. Eles ENIs servem como ponto de entrada para o tráfego privado e são gerenciados inteiramente pelo serviço. Eles não aceitam conexões de entrada da Internet e você mantém controle total sobre o tráfego deles por meio de seus próprios grupos de segurança.

Segurança

As conexões privadas são projetadas com várias camadas de segurança:

  • Sem exposição pública à Internet — Todo o tráfego entre o AWS DevOps agente e seu serviço de destino permanece na AWS rede. Seu serviço nunca precisa de um endereço IP público ou gateway de internet.

  • Gateway de recursos controlados por serviços — O gateway de recursos gerenciados por serviços é somente para leitura em sua conta. Ele só pode ser usado pelo AWS DevOps Agente, e nenhum outro serviço ou principal pode rotear o tráfego por ele. Você pode verificar isso nos AWS CloudTrailregistros, que registram todas as chamadas da API VPC Lattice.

  • Seus grupos de segurança, suas regras — Você controla o tráfego de entrada e saída para os grupos ENIs de segurança que você possui e gerencia. Se você não especificar grupos de segurança, o AWS DevOps Agente cria um grupo de segurança padrão com o escopo das portas que você define.

  • Funções vinculadas ao serviço com menos privilégios — O AWS DevOps agente usa uma função vinculada ao serviço para criar somente os recursos necessários do VPC Lattice e do Amazon EC2. Essa função tem como escopo os recursos marcados com AWSAIDevOpsManaged e não pode acessar nenhum outro recurso em sua conta.

nota

Se sua organização tem políticas de controle de serviço (SCPs) que restringem as ações da API VPC Lattice, o gateway de recursos gerenciados por serviços é criado por meio de uma função vinculada ao serviço. Certifique-se de SCPs permitir as ações necessárias para a função vinculada ao serviço.

Arquitetura

O diagrama a seguir mostra o caminho de rede para uma conexão privada.

Nesta arquitetura:

  • AWS DevOps O agente inicia uma solicitação para seu serviço de destino.

  • O Amazon VPC Lattice encaminha a solicitação por meio do gateway de recursos gerenciado por serviços em sua VPC. Para configurações avançadas usando seus próprios recursos do VPC Lattice, consulte Configuração avançada usando os recursos existentes do VPC Lattice.

  • Uma ENI na sua VPC recebe o tráfego e o encaminha para o endereço IP ou nome DNS do seu serviço de destino.

  • Seus grupos de segurança controlam qual tráfego é permitido por meio do ENIs.

  • Do ponto de vista do seu serviço de destino, a solicitação se origina de endereços IP privados de ENIs sua VPC.

Crie uma conexão privada

Você pode criar uma conexão privada usando o AWS Management Console ou a AWS CLI.

nota

As seguintes zonas de disponibilidade não são compatíveis com o VPC Lattice:use1-az3,,,usw1-az2,apne1-az3,, apne2-az2euc1-az2,euw1-az4. cac1-az3 ilc1-az2

Pré-requisitos

Antes de criar uma conexão privada, verifique se você tem o seguinte:

  • Um Espaço do Agente ativo — Você precisa de um Espaço do Agente existente na sua conta. Se você não tiver uma, consulte Começando com o AWS DevOps Agent.

  • Um serviço de destino com acesso privado — Seu servidor MCP, plataforma de observabilidade ou outro serviço deve estar acessível em um endereço IP privado conhecido ou nome DNS da VPC em que o gateway de recursos está implantado. O serviço pode ser executado na mesma VPC, em uma VPC emparelhada ou no local, desde que seja roteável a partir das sub-redes do gateway de recursos. O serviço deve fornecer tráfego HTTPS com uma versão TLS mínima de 1.2 em uma porta que você especifica ao criar a conexão.

  • Sub-redes em sua VPC — identifique de 1 a 20 sub-redes nas quais elas serão criadas. ENIs Recomendamos selecionar sub-redes em várias zonas de disponibilidade para alta disponibilidade. Essas sub-redes devem ter conectividade de rede com seu serviço de destino. Uma sub-rede por zona de disponibilidade pode ser usada pelo VPC Lattice.

  • (Opcional) Grupos de segurança — Se você quiser controlar o tráfego com regras específicas, prepare até cinco grupos de segurança IDs para anexar ao ENIs. Se você omitir grupos de segurança, o AWS DevOps Agente cria um grupo de segurança padrão.

Conexões privadas são recursos em nível de conta. Depois de criar uma conexão privada, você pode reutilizá-la em várias integrações e espaços de agentes que precisam alcançar o mesmo host.

Crie uma conexão privada usando o console

  1. Abra o console do AWS DevOps agente.

  2. No painel de navegação, escolha Provedores de capacidade e, em seguida, escolha Conexões privadas.

  3. Escolha Criar uma conexão.

  4. Em Nome, insira um nome descritivo para a conexão, comomy-mcp-tool-connection.

  5. Para VPC, selecione a VPC em que o gateway ENIs de recursos será implantado.

  6. Para Sub-redes, selecione uma ou mais sub-redes (até 20). Recomendamos escolher sub-redes em pelo menos duas zonas de disponibilidade.

  7. Para o tipo de endereço IP, selecione o tipo de endereço IP do seu serviço de destino (IPv4,IPv6, ouDualStack).

  8. (Opcional) Em Número de IPv4 endereços, se você IPv4 selecionou Dualstack para o tipo de endereço IP, você pode inserir o número de IPv4 endereços por ENI para seu gateway de recursos. O padrão é 16 IPv4 endereços por ENI.

  9. (Opcional) Para grupos de segurança, selecione grupos de segurança existentes (até 5) para restringir qual tráfego pode alcançar seu serviço de destino. Se você não selecionar nenhum, um grupo de segurança padrão será criado.

  10. (Opcional) Para intervalos de portas, especifique as portas TCP que seu aplicativo de destino escuta (por exemplo, 443 ou8080-8090). Você pode especificar até 11 intervalos de portas.

  11. Em Endereço do host, insira o endereço IP ou o nome DNS do serviço de destino (por exemplo, mcp.internal.example.com ou10.0.1.50). O serviço deve estar acessível a partir da VPC selecionada. Se você escolher um nome DNS, ele deverá ser resolvido na VPC selecionada.

  12. (Opcional) Em Chave pública do certificado, se o endereço do host que você especificou usar certificados TLS emitidos por uma autoridade de certificação privada, insira a chave pública codificada pelo PEM do certificado. Isso permite que o AWS DevOps Agente confie na conexão TLS com seu serviço de destino.

  13. Escolha Criar conexão.

O status da conexão muda para Criar em andamento. Esse processo pode levar até 10 minutos. Quando o status muda para Ativo, o caminho da rede está pronto.

Se o status mudar para Falha na criação, verifique o seguinte:

  • As sub-redes que você especificou têm endereços IP disponíveis.

  • Sua conta não atingiu as cotas de serviço do VPC Lattice.

  • Nenhuma política restritiva do IAM está impedindo que a função vinculada ao serviço crie recursos.

nota

Essas etapas também podem ser executadas selecionando Create a new private connection durante o registro de um provedor de recursos. Para obter mais informações, consulte Usar uma conexão privada com um provedor de recursos.

Crie uma conexão privada usando a AWS CLI

Execute o comando a seguir para criar uma conexão privada. Substitua os valores dos espaços reservados pelos seus próprios.

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

A resposta inclui o nome da conexão e um status deCREATE_IN_PROGRESS:

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

Para verificar o status da conexão, use o describe-private-connection comando:

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

Quando o status forACTIVE, sua conexão privada estará pronta para uso.

Use uma conexão privada com um provedor de recursos

Para usar uma conexão privada, você pode vinculá-la durante o registro de um provedor de recursos. Os recursos compatíveis que podem ser usados com conexões privadas incluem: GitHub GitLabMCP Server,, Grafana e. Você pode executar essa etapa usando o console AWS de gerenciamento ou a AWS CLI.

nota

Ao registrar um provedor de recursos, o AWS DevOps Agente valida se o endpoint está acessível e está respondendo. Certifique-se de que seu serviço de destino esteja funcionando e aceitando conexões antes de concluir o registro.

Use uma conexão privada com um provedor de recursos usando o console

No console do AWS DevOps agente, as conexões privadas podem ser vinculadas a um recurso durante o registro, selecionando a opção “Conectar-se ao endpoint usando uma conexão privada”.

  1. Abra o console do AWS DevOps agente e navegue até seu Espaço do agente.

  2. Na seção Provedores de recursos, escolha Registro.

  3. Selecione Registrar para o tipo de capacidade que você deseja usar com a conexão privada.

  4. Na visualização de detalhes do registro, insira o URL do Endpoint ao qual você deseja se conectar usando a conexão privada (por exemplo,https://mcp.internal.example.com).

  5. Selecione Conectar ao endpoint usando uma conexão privada.

  6. Selecione uma conexão privada existente que corresponda ao URL do Endpoint ao qual você deseja se conectar ou selecione Criar uma nova conexão privada para criar uma.

  7. Conclua o processo de registro do provedor de recursos.

nota

Quando você seleciona uma conexão privada para um provedor de recursos que usa OAuth autenticação (Credenciais do Cliente ou 3LO), a conexão privada se aplica tanto ao endpoint do provedor de recursos quanto ao endpoint da troca de tokens. Certifique-se de que a conexão privada esteja configurada com um endereço de host que possa rotear o tráfego para os dois endpoints.

Use uma conexão privada com um provedor de recursos usando a AWS CLI

Você pode registrar recursos com uma conexão privada incluindo o private-connection-name argumento. Abaixo está um exemplo de registro de um servidor MCP com autorização de chave de API usando a conexão my-mcp-tool-connection privada. Substitua os valores dos espaços reservados pelos seus próprios.

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

Verifique uma conexão privada

Depois que a conexão privada atingir o estado Ativo e for utilizada por um provedor de recursos, verifique se o AWS DevOps Agente pode acessar seu serviço de destino:

  1. Abra o console do AWS DevOps agente e navegue até seu Espaço do agente.

  2. Inicie uma nova sessão de bate-papo.

  3. Invoque um comando que usa a integração apoiada por sua conexão privada. Por exemplo, se sua ferramenta MCP fornece acesso a uma base de conhecimento interna, faça ao agente uma pergunta que exija essa base de conhecimento.

  4. Confirme se o agente retorna os resultados do serviço privado.

Se a conexão falhar, verifique o seguinte:

  • Limites do VPC Lattice — Verifique se você não atingiu nenhum gateway de recursos ou outros limites de cota do VPC Lattice

  • Regras do grupo de segurança — Verifique se os grupos de segurança conectados ao ENIs permitem tráfego de saída na porta que seu serviço escuta. Verifique também se o grupo de segurança do seu serviço permite tráfego de entrada na porta de destino. O tráfego chega do plano de dados VPC Lattice dentro do intervalo IPs CIDR do VPC. Você pode usar a referência de grupos de segurança (permitindo o grupo de segurança ENI como fonte) ou permitir a entrada do CIDR da VPC.

  • Conectividade de sub-rede — verifique se as sub-redes selecionadas podem rotear o tráfego para seu serviço. Se o serviço for executado em uma sub-rede diferente, confirme se as tabelas de rotas permitem tráfego entre elas.

  • Disponibilidade do serviço — confirme se seu serviço está em execução e aceitando conexões na porta esperada.

  • Zona de disponibilidade não suportada - verifique se suas sub-redes estão em zonas de disponibilidade suportadas. Execute aws ec2 describe-subnets --subnet-ids <your-subnet-ids> --query 'Subnets[*].[SubnetId,AvailabilityZoneId]' e verifique as zonas de disponibilidade não suportadas listadas acima.

Excluir uma conexão privada

Você pode excluir conexões privadas não utilizadas usando o AWS Management Console ou a AWS CLI.

Excluir uma conexão privada usando o console

  1. Abra o console do AWS DevOps agente.

  2. No painel de navegação, escolha Provedores de capacidade e, em seguida, escolha Conexões privadas.

  3. Selecione o menu Ações da conexão privada que você deseja excluir e selecione Remover.

A conexão privada será exibida com o status “Removendo conexão” enquanto o AWS DevOps Agente remove o gateway de recursos gerenciados e ENIs da sua VPC. Depois que a exclusão for concluída, a conexão não aparecerá mais na sua lista de conexões privadas.

Excluir uma conexão privada usando a AWS CLI

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

A resposta retorna um status deDELETE_IN_PROGRESS. AWS DevOps O agente remove o gateway de recursos gerenciados e ENIs da sua VPC. Depois que a exclusão for concluída, a conexão não aparecerá mais na sua lista de conexões privadas.

Configuração avançada usando os recursos existentes do VPC Lattice

Se sua organização já usa o Amazon VPC Lattice e gerencia suas próprias configurações de recursos, você pode criar uma conexão privada no modo autogerenciado. Em vez de fazer com que o AWS DevOps Agente crie um gateway de recursos para você, você fornece o Amazon Resource Name (ARN) de uma configuração de recurso existente que aponta para seu serviço de destino.

Essa abordagem é útil quando você:

  • Quer controle total sobre o gateway de recursos e o ciclo de vida da configuração de recursos.

  • Precisa compartilhar configurações de recursos em várias AWS contas ou serviços.

  • Exija registros de acesso ao VPC Lattice para monitoramento detalhado do tráfego.

  • Execute uma arquitetura hub-and-spoke de rede.

Para criar uma conexão privada autogerenciada com a AWS CLI:

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

Para obter mais detalhes sobre como configurar gateways de recursos e configurações de recursos do VPC Lattice, consulte o Guia do usuário do Amazon VPC Lattice.