View a markdown version of this page

AWS 에이전트 레지스트리를 사용하는 VPC 및 AWS PrivateLink - Amazon Bedrock AgentCore

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

AWS 에이전트 레지스트리를 사용하는 VPC 및 AWS PrivateLink

AWS PrivateLink를 사용하여 VPC와 AWS 에이전트 레지스트리 간에 프라이빗 연결을 생성할 수 있습니다. 인터넷 게이트웨이, NAT 디바이스, VPN 연결 또는 AWS Direct Connect 연결을 사용하지 않고 VPC에 있는 것처럼 AWS 에이전트 레지스트리에 액세스할 수 있습니다. VPC의 인스턴스는 AWS 에이전트 레지스트리에 액세스하는 데 퍼블릭 IP 주소가 필요하지 않습니다.

이 프라이빗 연결은 AWS PrivateLink로 구동되는 인터페이스 엔드포인트를 생성하여 설정합니다. 인터페이스 엔드포인트에 대해 사용 설정하는 각 서브넷에서 엔드포인트 네트워크 인터페이스를 생성합니다. 이는 AWS Agent Registry로 향하는 트래픽의 진입점 역할을 하는 요청자 관리형 네트워크 인터페이스입니다.

자세한 내용은 PrivateLink 가이드의 Access AWS services AWS PrivateLink throughPrivateLink를 참조하세요. AWS PrivateLink

AWS 에이전트 레지스트리에 대한 인터페이스 엔드포인트를 설정하기 전에 AWS PrivateLink 가이드의 고려 사항을 검토하세요.

AWS 에이전트 레지스트리는 두 개의 AWS PrivateLink 엔드포인트를 제공합니다.

  • 컨트롤 플레인 엔드포인트: com.amazonaws.region.agent-registry-control - 레지스트리 및 레코드 관리(작업 생성, 업데이트, 삭제 등).

  • 데이터 영역 엔드포인트: com.amazonaws.region.agent-registry- 레코드 검색 및 레지스트리 MCP 엔드포인트(검색, InvokeRegistryMcp 등).

AWS 에이전트 레지스트리 인터페이스 엔드포인트를 사용할 수 있는 AWS 리전 목록은 지원되는 AWS 리전을 참조하세요. 인터페이스 엔드포인트는 AWS 에이전트 레지스트리를 사용할 수 있는 모든 리전에서 사용할 수 있습니다.

중요

데이터 영역 APIs는 인증 및 베어러 토큰(OAuth) 인증을 위해 AWS 서명 버전 4(SigV4) 헤더를 모두 지원하며, 엔드포인트 정책은 둘 다에 대해 평가됩니다. 보유자 토큰 호출자는 IAM 자격 증명을 보유하지 않으므로 특정 계정, 역할 또는 사용자 ARN이 아닌 *Principal인 문과만 일치합니다. 보유자 토큰 요청이 엔드포인트를 통과하려면 *로 Principal 설정된 Allow 문이 작업 및 리소스를 포함해야 합니다. 특정 AWS 자격 증명의 이름을 지정하는 문은 이를 허용하지 않습니다. 보유자 토큰 호출자를 제한하려면 Action 및가 * 범위로 Principal 설정한 Deny 문을 사용합니다. 보유자 호출자는 보안 주체 수준에서 구분Resource할 수 없으므로 보안 주체가 개별 보유자 호출자를 제거할 수 없습니다. 레지스트리는에 따라 SigV4 또는 JWT에 의해 승인되므로 둘 다 사용할 authorizerType수 없으므로 각 레지스트리에는 자체 권한 부여 모드와 일치하는 문 양식만 필요합니다.

AWS 에이전트 레지스트리는 aws:SourceVpc 및를 포함한 AWS IAM 전역 조건 컨텍스트 키를 지원합니다aws:SourceVpce. 기본적으로 인터페이스 엔드포인트를 통해 AWS 에이전트 레지스트리에 대한 전체 액세스 권한을 가집니다. 이러한 액세스를 제한하려면 사용자 지정 엔드포인트 정책을 인터페이스 엔드포인트에 연결하거나 보안 그룹을 엔드포인트 네트워크 인터페이스와 연결합니다.

Amazon VPC 콘솔 또는 AWS 명령줄 인터페이스(AWS CLI)를 사용하여 AWS 에이전트 레지스트리에 대한 인터페이스 엔드포인트를 생성할 수 있습니다. 자세한 내용은 AWS PrivateLink 가이드의 인터페이스 엔드포인트 생성을 참조하세요.

다음 서비스 이름 형식을 사용하여 AWS 에이전트 레지스트리에 대한 인터페이스 엔드포인트를 생성합니다.

  • 컨트롤 플레인 작업(레지스트리 및 레코드 관리): com.amazonaws.region.agent-registry-control (예: com.amazonaws.us-east-1.agent-registry-control)

  • 데이터 영역 작업(레코드 검색 및 레지스트리 MCP 엔드포인트): com.amazonaws.region.agent-registry (예: com.amazonaws.us-east-1.agent-registry)

인터페이스 엔드포인트에 대해 프라이빗 DNS를 활성화하는 경우 기본 리전 DNS 이름을 사용하여 AWS Agent Registry에 API 요청을 할 수 있습니다.

  • 컨트롤 플레인: agent-registry-control.region.api.aws (예: agent-registry-control.us-east-1.api.aws)

  • 데이터 영역: agent-registry.region.api.aws (예: agent-registry.us-east-1.api.aws)

엔드포인트 정책은 인터페이스 엔드포인트에 연결할 수 있는 IAM 리소스입니다. 기본 엔드포인트 정책을 사용하면 인터페이스 엔드포인트를 통해 AWS 에이전트 레지스트리에 대한 전체 액세스 권한을 갖게 됩니다. 해당 액세스를 제한하려면 사용자 지정 엔드포인트 정책을 연결합니다.

엔드포인트 정책은 다음 정보를 지정합니다.

  • 작업을 수행할 수 있는 보안 주체(AWS 계정, IAM 사용자 및 IAM 역할).

    • AWS 에이전트 레지스트리 데이터 영역 엔드포인트의 경우 레지스트리가 AWS 서명 버전 4(SigV4) 대신 JWT 인증을 사용하는 경우 JWT 호출자를 승인하는 문에 대해 *Principal로 설정합니다. SigV4-based 인증을 사용하면를 특정 AWS 자격 증명Principal으로 정의할 수 있습니다.

  • 수행할 수 있는 작업

  • 작업을 수행할 수 있는 리소스.

자세한 내용은 AWS PrivateLink 가이드의 엔드포인트 정책을 사용하여 서비스에 대한 액세스 제어를 참조하세요.

다음 예제에서는 각 AWS 에이전트 레지스트리 엔드포인트에 대한 엔드포인트 정책을 보여줍니다. 탭을 선택하여 컨트롤 플레인, 데이터 플레인 레코드 검색 작업 또는 데이터 플레인 MCP 엔드포인트에 대한 정책을 봅니다.

예
Control plane (registry and record management)
  1. 다음 엔드포인트 정책은 특정 IAM 보안 주체가 컨트롤 플레인 엔드포인트를 통해 레지스트리와 해당 레코드를 관리할 수 있도록 허용합니다.

    { "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/*" } ] }

    다음 엔드포인트 정책은 컨트롤 플레인 엔드포인트를 통해 레지스트리 및 레코드 메타데이터에 대한 특정 IAM 보안 주체의 읽기 전용 액세스를 허용합니다. 이는 해당 인벤토리 레지스트리를 수정하지 않고 도구화하는 데 유용합니다.

    레지스트리 메타데이터에 대한 읽기 전용 액세스

    { "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/*" } ] }

    컨트롤 플레인 액세스를 단일 레지스트리 및 해당 레코드로 제한하려면 특정를 대상으로 하는 두 개의 리소스 ARNs을 사용합니다. REGISTRY_ID 하나는 레지스트리 자체용(registry/REGISTRY_ID)이고 다른 하나는 레코드용()입니다registry/REGISTRY_ID/record/*. CreateRegistry는 계정 수준에서 ListRegistries 작동하며 특정 레지스트리 ARN으로 범위를 지정할 수 없으므로 작업 목록에서 삭제할 수 있습니다. 호출자가 필요한 경우 와일드카드 리소스로 별도로 부여합니다.

    단일 레지스트리에 대한 액세스 범위 지정

    { "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. 다음 엔드포인트 정책은 특정 IAM 보안 주체가 데이터 영역 엔드포인트를 통해 하나의 레지스트리에서 승인된 레코드를 검색하고 검색할 수 있도록 허용합니다.

    { "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/*" ] } ] }

    다음 정책은 특정 IAM 보안 주체가 SigV4-authorized 레지스트리를 검색하고 인증된 JWT 호출자가 동일한 엔드포인트를 통해 JWT 인증 레지스트리를 검색하도록 허용합니다.

    혼합 SigV4 및 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. 다음 엔드포인트 정책은 인증된 호출자가 JWT 승인 레지스트리에서 레지스트리 MCP 엔드포인트를 호출하도록 허용합니다. JWT 인증 레지스트리의 MCP 엔드포인트는 SigV4가 아닌 보유자 토큰으로 인증되므로 *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" } ] }

    InvokeRegistryMcp는 SDK 클라이언트 메서드로 노출되지 않습니다. 이는 데이터 영역 엔드포인트를 통해 레지스트리의 MCP 프로토콜 경로로 전송된 트래픽을 승인하는 IAM 작업입니다. 레지스트리 MCP 엔드포인트를 호출하려면 agent-registry:InvokeRegistryMcp 및 discovery-search 작업이 모두 필요합니다. agent-registry 네임스페이스에서 검색 작업은 이고, 레거시 bedrock-agentcore 네임스페이스agent-registry:SearchDiscoverableRegistryRecords에서는 입니다bedrock-agentcore:SearchRegistryRecords.