View a markdown version of this page

Amazon Bedrock AgentCore 결제의 보안 - Amazon Bedrock AgentCore

Amazon Bedrock AgentCore 결제의 보안

다음 모범 사례는 Amazon Bedrock AgentCore 결제를 사용할 때 보안 인시던트를 방지하는 데 도움이 될 수 있습니다. 예방 제어는 안전하지 않은 작업이 발생하기 전에 중지합니다. Detective는 예상치 못한 활동을 표시하므로 이에 대응할 수 있습니다.

예방 제어

이러한 제어를 사용하여 에이전트가 수행할 수 있는 작업을 제한하고 민감한 재료를 접근하지 못하도록 할 수 있습니다.

4역할 IAM 패턴으로 최소 권한 적용

AgentCore 결제는 고유한 IAM 역할을 사용하여 컨트롤 플레인을 데이터 플레인과 분리합니다. 각 역할과 일치하는 페르소나를 기반으로 IAM 권한을 설정합니다. 이 패턴을 사용하면 단일 역할이 예산을 늘리고 예산을 지출할 수 없습니다.

# Role 용도

1

ControlPlaneRole

서비스를 관리합니다.

2

ManagementRole

세션을 구성합니다. 이 역할은 명시적으로 거부됩니다ProcessPayment.

3

ProcessPaymentRole

결제를 실행합니다.

4

ResourceRetrievalRole

서비스 수임. 세션 및 자격 증명 상태를 가져옵니다.

자세한 내용은 AgentCore 결제에 대한 IAM 역할을 참조하세요.

AgentCore 자격 증명에 자격 증명 저장

Wallet 공급자 자격 증명을 에이전트 코드 또는 환경 변수에 포함시키지 마십시오.

  • Coinbase CDP 또는 Stripe(Privy) 자격 증명을 AgentCore 자격 증명PaymentCredentialProvider에 로 저장합니다.

  • 서비스는를 사용하여 런타임에 이를 검색합니다ResourceRetrievalRole.

  • Wallet 공급자의 권장 일정에 따라 자격 증명을 교체합니다. 자격 증명이 손상된 경우 즉시 취소합니다.

자세한 내용은 AgentCore 자격 증명을 참조하세요.

UserId 헤더를 올바르게 설정

IAM 구성 인바운드 권한 부여 결제 관리자에서 백엔드는 X-Amzn-Bedrock-AgentCore-Payments-User-Id 헤더를 어설션하고 AgentCore 결제는 헤더를 확인하지 않습니다. 이 값을 올바르게 설정하는 것은 사용자의 책임입니다.

AgentCore 결제는 IAM 호출자와 JWT(OAuth 사용 시)를 확인하지만 API 호출 시 UserId 헤더의 정확성은 사용자의 책임입니다. 최종 사용자 또는 에이전트가이 헤더에 직접 영향을 주지 않도록 하세요.

보안 다중 테넌트 배포

여러 최종 사용자에게 서비스를 제공하는 다중 테넌트 배포의 경우 결제 관리자의 CUSTOM_JWT (OAuth) 권한 부여 유형을 사용합니다. 이렇게 하면 서비스에 확인된 최종 사용자 자격 증명이 제공됩니다. IAM 구성 결제 관리자를 사용하면 AgentCore 결제가 최종 사용자 자격 증명을 확인하지 않습니다.

자금 조달과 위임은 두 가지 개별 최종 사용자 결정이며, 둘 다 에이전트로부터 out-of-band로 이루어집니다.

  • 자금 - 최종 사용자는 Wallet 공급자 포털을 통해 자금을 입금합니다. 에이전트는 펀딩에 대한 API 액세스 권한이 없으며 이를 입력하거나 자동 시작해서는 안 됩니다.

  • 위임 - 최종 사용자는 Coinbase 소비 권한 또는 권한 위임 작업을 통해 권한을 부여합니다. 사용자가 언제든지 위임을 취소할 수 있으므로 위임이 영구적이라고 가정하지 마십시오. 취소된 위임을 정상적으로 처리합니다.

에이전트를 결제 수단과 격리합니다.

에이전트는 카드 번호, CVV 값, 은행 세부 정보 또는 Wallet 프라이빗 키에 액세스해서는 안 됩니다. 에이전트의 보기는 "사용자 소유 지갑에서 지출할 수 있는 권한"에서 중지됩니다.

  • Wallet 키는 공급자가 또는 개발자가 아닌 자체 관리 AWS 상태로 보유합니다.

  • 프롬프트, 도구 입력 또는 컨텍스트 창을 통해 결제 수단 세부 정보를 전달하지 마세요.

AgentCore에서 정책을 사용한 범위 도구 액세스

도구 수준 권한 부여를 위해 Amazon Bedrock AgentCore Gateway를 통해 유료 엔드포인트를 노출합니다. 게이트웨이를 통한 모든 호출은 에이전트의 자격 증명, 도구 이름 및 파라미터를 포함하여 요청을 평가하고 이를 허용할지 여부를 결정하는 Cedar 기반 엔진인 AgentCore의 정책에 의해 가로채집니다.

정책 및 결제 세션은 다양한 결정을 다룹니다.

  • 정책은 어떤 파라미터로 어떤 도구를 호출하는지 제어합니다.

  • 결제 세션은 지출할 수 있는 금액기간을 제어합니다.

함께 사용하면 도구 액세스 및 지출 금액을 위한 직교 레버를 사용할 수 있습니다.

  • 에이전트 자격 증명, 사용자 그룹 및 요청 파라미터에 따라 범위가 지정된 Cedar 정책을 작성합니다.

  • 에이전트가 필요하지 않은 경우 고비용 도구에 대한 액세스를 거부합니다.

  • 도구 카탈로그가 변경되면 정책을 정기적으로 검토하고 감사합니다.

자세한 내용은 AgentCore의 정책을 참조하세요.

예산 한도 및 TTL과 함께 결제 세션 사용

모든 결제는 최대 지출 금액과 만료 시간이 있는 결제 세션 내에서 실행됩니다. 인프라 계층은 이러한 제한을 적용하므로 프롬프트 주입 및 모델 비결정이 이러한 제한을 재정의할 수 없습니다.

  • 작업에 필요한 최소 maxSpendAmount로 설정하고 짧은 TTL을 설정합니다.

  • 보수적인 예산부터 시작하여 에이전트가 신뢰할 수 있는 것으로 입증되는 경우에만 예산을 인상합니다.

  • 실패한 서명은 예산 공제를 자동으로 롤백합니다.

자세한 내용은 결제 세션 생성을 참조하세요.

payTo 주소 검증 및 제한

payTo 주소는 수신자 지갑을 지정합니다. AgentCore 결제는 서버 측payTo에 제한을 적용하지 않으므로 애플리케이션은 ProcessPayment API를 호출하기 전에 주소를 검증해야 합니다.

  • 사전 검증된 판매자 주소의 허용 목록을 유지하고 알 수 없는 주소를 거부합니다.

  • 모델이 payTo 주소를 생성하지 않도록 합니다. x402 결제 요청 또는 확인된 레지스트리와 같은 신뢰할 수 있는 소스에서 가져와야 합니다.

  • x402 응답을 처리할 때 예상 판매자에 대해 검증합니다.

  • 엔드포인트 검색에는 AgentCore Gateway를 선호합니다. x402 Bazaar를 통해 확인된 payTo 주소를 제공하기 때문입니다.

  • Cedar 정책을 적용하여 에이전트가 지불할 수 있는 주소를 제한합니다.

  • 세션 간에 주소를 캐싱하지 마세요. 항상 허용 목록에 대해 검증된 현재 판매자 제공 주소를 사용합니다.

보안 네트워크 액세스

  • VPC 엔드포인트를 사용하여 트래픽을 퍼블릭 인터넷에서 차단합니다.

  • 엔드포인트 정책 및 IAM 조건(aws:sourceVpc, aws:sourceVpce)을 적용하여 오리진을 제한합니다.

  • 모든 AgentCore 결제 API 호출에 대해 AWS CloudTrail을 활성화합니다.

결제 실패 및 롤백을 위한 설계

  • 멱등성을 구현하여 재시도 시 중복 결제를 방지합니다.

  • 명확한 대체 동작으로 결제 실패를 처리합니다. 무기한 재시도하지 마세요.

  • 부분적인 장애를 모니터링하고 보정 트랜잭션을 구현합니다.

탐지 제어

이러한 컨트롤을 사용하여 결제 활동을 관찰하고 이상 현상을 확인하여 이에 대응할 수 있습니다.

관찰성 및 감사 로깅 활성화

AgentCore 결제는 Amazon CloudWatch를 통해 자동 관찰성을 제공합니다.

  • 판매 로그 - 모든 데이터 영역 호출이 로깅됩니다(누가, 무엇을, 얼마나 많이, 누구에게).

  • 판매 범위 - 전체 결제 수명 주기 추적은 AWS X-Ray에서 사용할 수 있습니다.

  • 등록되지 않은 주소에 대한 결제, 비정상적으로 많은 수의 고유 수신자 또는 알려진 판매자의 갑작스러운 주소 변경과 같은 비정상적인 지출 패턴에 대한 경보를 설정합니다.

  • 규정 준수 요구 사항에 따라 로그를 보관합니다.

  • 에이전트 코드를 사용하여 자체 작업을 로깅하지 마세요.

자세한 내용은 Amazon CloudWatch를 사용한 관찰성을 참조하세요.

구성을 정기적으로 검토

  • 예산을 감사하고 지출이 적은 에이전트의 한도를 줄입니다.

  • 분기별로 Cedar 정책 및 IAM 역할을 검토합니다.

  • 예상치 못한 위임 또는 자금 조달 활동이 있는지 Wallet 공급자 대시보드를 모니터링합니다.