View a markdown version of this page

VPC e AWS PrivateLink com AWS Registro de agentes - Base da Amazônia AgentCore

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á.

VPC e AWS PrivateLink com AWS Registro de agentes

Você pode usar AWS PrivateLink para criar uma conexão privada entre sua VPC e o AWS Agent Registry. Você pode acessar o AWS Agent Registry como se estivesse em sua VPC, sem o uso de um gateway de internet, dispositivo NAT, conexão VPN ou conexão AWS Direct Connect. As instâncias em sua VPC não precisam de endereços IP públicos para acessar o AWS Agent Registry.

Você estabelece essa conexão privada criando um endpoint de interface, que é alimentado por AWS PrivateLink. Criaremos um endpoint de interface de rede em cada sub-rede que você habilitar para o endpoint de interface. Essas são interfaces de rede gerenciadas pelo solicitante que servem como ponto de entrada para o tráfego destinado ao Agent Registry. AWS

Para obter mais informações, consulte Acesse AWS os serviços por meio AWS PrivateLink do AWS PrivateLink Guia.

Antes de configurar um endpoint de interface para o AWS Agent Registry, consulte Considerações no AWS PrivateLink Guia.

AWS O Agent Registry fornece dois AWS PrivateLink endpoints:

  • Endpoint do plano de controle: com.amazonaws.region.agent-registry-control — para registro e gerenciamento de registros (operações de criação, atualização, exclusão e assim por diante).

  • Ponto final do plano de dados: com.amazonaws.region.agent-registry — para a descoberta de registros e o endpoint MCP do registro (pesquisa e assim por diante). InvokeRegistryMcp

Para obter uma lista de AWS regiões nas quais os endpoints da interface do AWS Agent Registry estão disponíveis, consulte AWS Regiões Compatível AWS Regiões suportadas. Os endpoints de interface estão disponíveis em todas as regiões em que o AWS Agent Registry está disponível.

Importante

As APIs do plano de dados oferecem suporte aos cabeçalhos AWS Signature Version 4 (SigV4) para autenticação e autenticação por Bearer Token (OAuth), e sua política de endpoint é avaliada para ambos. Um chamador com token portador não tem identidade IAM, portanto, corresponde apenas a uma declaração cujo Principal é * — nunca uma conta, função ou ARN de usuário específico. Para que as solicitações de token portador sejam bem-sucedidas por meio do endpoint, uma Allow instrução Principal definida como * deve abranger a ação e o recurso; uma declaração nomeando uma AWS identidade específica não os admite. Para restringir os chamadores do token do portador, use uma Deny declaração com Principal definido como * com escopo de Action e Resource — você não pode destacar um chamador portador individual pelo principal, porque os chamadores do portador são indistinguíveis no nível principal. Um registro é autorizado pelo SigV4 ou pelo JWT de acordo com seu próprio modo de autorizaçãoauthorizerType, nunca por ambos, portanto, cada registro só precisa do formulário de declaração correspondente ao seu próprio modo de autorização.

AWS O Agent Registry oferece suporte a chaves de contexto de condição global do AWS IAM, incluindo aws:SourceVpc aws:SourceVpce e. Por padrão, você tem acesso total ao AWS Agent Registry por meio do endpoint da interface. Para restringir esse acesso, anexe uma política de endpoint personalizada ao endpoint da interface ou associe um grupo de segurança às interfaces de rede do endpoint.

Você pode criar um endpoint de interface para o AWS Agent Registry usando o console Amazon VPC ou a interface de linha de AWS comando (AWS CLI). Para obter mais informações, consulte Criar um endpoint de interface no AWS PrivateLink Guia.

Crie um endpoint de interface para o AWS Agent Registry usando o seguinte formato de nome de serviço:

  • Para operações de plano de controle (registro e gerenciamento de registros): com.amazonaws.region.agent-registry-control (por exemplo,com.amazonaws.us-east-1.agent-registry-control)

  • Para operações de plano de dados (descoberta de registros e endpoint MCP de registro): com.amazonaws.region.agent-registry (por exemplo,) com.amazonaws.us-east-1.agent-registry

Se você habilitar o DNS privado para o endpoint da interface, poderá fazer solicitações de API ao AWS Agent Registry usando seus nomes DNS regionais padrão:

  • Plano de controle: agent-registry-control.region.api.aws (por exemplo,agent-registry-control.us-east-1.api.aws)

  • Plano de dados: agent-registry.region.api.aws (por exemplo,agent-registry.us-east-1.api.aws)

Uma política de endpoint é um recurso do IAM que pode ser anexado ao endpoint de interface. Com a política de endpoint padrão, você tem acesso total ao AWS Agent Registry por meio do endpoint da interface. Para restringir esse acesso, anexe uma política de endpoint personalizada.

Uma política de endpoint especifica as seguintes informações:

  • Os diretores que podem realizar ações (AWS contas, usuários do IAM e funções do IAM).

    • Para o endpoint do plano de dados do AWS Agent Registry, se um registro usar autorização JWT em vez da AWS Signature Version 4 (SigV4), Principal defina como * para qualquer instrução que autorize chamadores JWT. Com a SigV4-based autenticação, você pode defini-la Principal como uma AWS identidade específica.

  • As ações que podem ser realizadas.

  • Os recursos nos quais as ações podem ser executadas.

Para obter mais informações, consulte Controle o acesso aos serviços usando políticas de endpoint no AWS PrivateLink Guia.

Os exemplos a seguir mostram políticas de endpoint para cada endpoint do AWS Agent Registry. Escolha uma guia para visualizar a política do plano de controle, das operações de descoberta de registros do plano de dados ou do endpoint MCP do plano de dados.

exemplo
Control plane (registry and record management)
  1. A política de endpoint a seguir permite que um diretor de IAM específico gerencie registros e seus registros por meio do endpoint do plano de controle.

    { "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::ACCOUNT_ID:root" }, "Action": [ "agent-registry:CreateRegistry", "agent-registry:GetRegistry", "agent-registry:UpdateRegistry", "agent-registry:DeleteRegistry", "agent-registry:ListRegistries", "agent-registry:CreateRegistryRecord", "agent-registry:GetRegistryRecord", "agent-registry:UpdateRegistryRecord", "agent-registry:DeleteRegistryRecord", "agent-registry:ListRegistryRecords", "agent-registry:SubmitRegistryRecordForApproval", "agent-registry:UpdateRegistryRecordStatus" ], "Resource": "arn:aws:agent-registry:us-east-1:ACCOUNT_ID:registry/*" } ] }

    A política de endpoint a seguir permite que um principal IAM específico tenha acesso somente para leitura aos metadados de registro e registro por meio do endpoint do plano de controle — útil para ferramentas que inventariam registros sem modificá-los.

    Read-only acesso aos metadados do registro

    { "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::ACCOUNT_ID:root" }, "Action": [ "agent-registry:GetRegistry", "agent-registry:ListRegistries", "agent-registry:GetRegistryRecord", "agent-registry:ListRegistryRecords" ], "Resource": "arn:aws:agent-registry:us-east-1:ACCOUNT_ID:registry/*" } ] }

    Para limitar o acesso do plano de controle a um único registro e seus registros, use dois ARNs de recursos direcionados a um específico REGISTRY_ID — um para o próprio registro (registry/REGISTRY_ID) e outro para seus registros (registry/REGISTRY_ID/record/*). CreateRegistrye ListRegistries operam no nível da conta e não podem ter como escopo um ARN de registro específico, então retire-os da lista de ações — conceda a eles separadamente um recurso curinga se o chamador precisar deles.

    Escopo de acesso a um único registro

    { "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::ACCOUNT_ID:root" }, "Action": [ "agent-registry:GetRegistry", "agent-registry:UpdateRegistry", "agent-registry:DeleteRegistry", "agent-registry:CreateRegistryRecord", "agent-registry:GetRegistryRecord", "agent-registry:UpdateRegistryRecord", "agent-registry:DeleteRegistryRecord", "agent-registry:ListRegistryRecords", "agent-registry:SubmitRegistryRecordForApproval", "agent-registry:UpdateRegistryRecordStatus" ], "Resource": [ "arn:aws:agent-registry:us-east-1:ACCOUNT_ID:registry/REGISTRY_ID", "arn:aws:agent-registry:us-east-1:ACCOUNT_ID:registry/REGISTRY_ID/record/*" ] } ] }
Data plane (record discovery)
  1. A política de endpoint a seguir permite que um diretor de IAM específico pesquise e navegue por registros aprovados em um registro por meio do endpoint do plano de dados.

    { "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::ACCOUNT_ID:root" }, "Action": [ "agent-registry:SearchDiscoverableRegistryRecords", "agent-registry:ListDiscoverableRegistryRecords", "agent-registry:GetDiscoverableRegistryRecord" ], "Resource": [ "arn:aws:agent-registry:us-east-1:ACCOUNT_ID:registry/REGISTRY_ID", "arn:aws:agent-registry:us-east-1:ACCOUNT_ID:registry/REGISTRY_ID/record/*" ] } ] }

    A política a seguir permite que um principal do IAM específico pesquise um SigV4-authorized registro e qualquer chamador autenticado do JWT pesquise um JWT-authorized registro por meio do mesmo endpoint.

    Autorização mista de SigV4 e JWT

    { "Statement": [ { "Sid": "AllowIamSearchOnSigV4Registry", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::ACCOUNT_ID:root" }, "Action": [ "agent-registry:SearchDiscoverableRegistryRecords", "agent-registry:ListDiscoverableRegistryRecords", "agent-registry:GetDiscoverableRegistryRecord" ], "Resource": [ "arn:aws:agent-registry:us-east-1:ACCOUNT_ID:registry/SIGV4_REGISTRY_ID", "arn:aws:agent-registry:us-east-1:ACCOUNT_ID:registry/SIGV4_REGISTRY_ID/record/*" ] }, { "Sid": "AllowJwtSearchOnJwtRegistry", "Effect": "Allow", "Principal": "*", "Action": [ "agent-registry:SearchDiscoverableRegistryRecords", "agent-registry:ListDiscoverableRegistryRecords", "agent-registry:GetDiscoverableRegistryRecord" ], "Resource": [ "arn:aws:agent-registry:us-east-1:ACCOUNT_ID:registry/JWT_REGISTRY_ID", "arn:aws:agent-registry:us-east-1:ACCOUNT_ID:registry/JWT_REGISTRY_ID/record/*" ] } ] }
Data plane (registry MCP endpoint)
  1. A política de endpoint a seguir permite que qualquer chamador autenticado invoque o endpoint MCP do registro em um registro. JWT-authorized Como o endpoint MCP em um JWT-authorized registro é autenticado pelo token do portador em vez do SigV4, defina como *. Principal

    { "Statement": [ { "Effect": "Allow", "Principal": "*", "Action": [ "agent-registry:InvokeRegistryMcp", "agent-registry:SearchDiscoverableRegistryRecords" ], "Resource": "arn:aws:agent-registry:us-east-1:ACCOUNT_ID:registry/REGISTRY_ID" } ] }

    InvokeRegistryMcpnão é exposto como um método de cliente do SDK — é a ação do IAM que autoriza o tráfego enviado para o caminho do protocolo MCP do registro pelo endpoint do plano de dados. A invocação do endpoint MCP do registro exige tanto a ação de descoberta agent-registry:InvokeRegistryMcp quanto a pesquisa. No agent-registry namespace, a ação de pesquisa éagent-registry:SearchDiscoverableRegistryRecords; no bedrock-agentcore namespace legado, é. bedrock-agentcore:SearchRegistryRecords