TL;DR
생성형 에이전트가 여러 테넌트를 대리하여 downstream API를 호출할 때 누구의 신원이 호출과 함께 이동해야 하는지가 핵심 문제로 드러났고, 이 문제는 inbound 토큰의 audience가 downstream과 일치하지 않을 때 특히 심각하다. Amazon Bedrock AgentCore Identity는 OAuth 2.0 Token Exchange(RFC 8693)를 네이티브 credential‑provider 그랜트로 지원하여 AgentCore Gateway가 인바운드 사용자 토큰을 도구 호출 전에 대상에 바인딩된 새 토큰으로 교환하도록 함으로써 sub 클레임을 보존하면서 aud 클레임으로 권한 범위를 제한한다. 이 방식은 에이전트 코드에 교환 로직을 추가할 필요를 없애고 발급된 토큰이 특정 downstream 서비스에서만 유효하도록 만들어 암호학적 최소 권한을 구현한다. 참조 구현인 TravelBot과 함께 Okta 대상 설정과 각 홉에서의 JWT 클레임 변형을 순차적으로 제시하여 다중 테넌트 전반에 걸친 방어 심층과 실무 적용 방법을 검증한다.
섹션별 상세
- AgentCore Identity가 OAuth 2.0 Token Exchange(RFC 8693)를 네이티브 credential‑provider 그랜트 타입으로 지원한다. — Introducing on-behalf-of token exchange in AgentCore Identity 섹션의 첫 문단
- AgentCore Gateway는 인바운드 사용자 토큰을 downstream 도구 호출 전에 대상(audience)에 바인딩된 새 토큰으로 투명하게 교환할 수 있다. — Introducing on-behalf-of token exchange in AgentCore Identity 섹션의 설명 및 이점 목록
용어 해설
- Token Exchange (RFC 8693)
- — OAuth 2.0 Token Exchange(RFC 8693)는 클라이언트가 수신한 액세스 토큰을 다른 대상(audience)에 바인딩된 토큰으로 교환하는 표준 규격이다. 교환 요청은 원본 토큰의 소유자(sub) 정보를 보존하면서 새로운 aud 클레임을 포함한 토큰을 발급하도록 설계되어 다중 서비스 호출 시 권한 범위를 세분화할 수 있다. 다중 테넌트 에이전트 환경에서 에이전트가 대리로 호출할 때 발생하는 혼란 대리인 문제를 해소하는 핵심 수단이다.
- Audience Binding
- — 오디언스 바인딩은 발급된 액세스 토큰의 aud(대상) 클레임을 특정 downstream 서비스로 제한하는 방식이다. 토큰이 특정 서비스에만 유효하도록 청중을 고정하면, 동일 토큰이 다른 테넌트나 서비스에서 오용되는 것을 방지할 수 있다. 다중 테넌트 에이전트 아키텍처에서 권한의 최소화와 방어 심층을 제공하는 수단으로 중요하다.
- Confused Deputy Problem
- — 혼란 대리인 문제는 대리자(서비스)가 사용자 대신 호출을 수행할 때 본래 권한과 호출 대상 권한이 섞여 잘못된 권한 위임이 발생하는 취약성이다. 에이전트가 자체 서비스 계정으로 모든 호출을 수행하면 감사 추적이 붕괴되고, 반대로 원본 사용자의 토큰을 그대로 전달하면 downstream 서비스가 사용자의 의도가 아닌 에이전트의 권한으로 동작할 수 있다. 다중 테넌트 환경에서 OBO 패턴과 토큰 교환으로 이 문제를 완화할 수 있다.
- JWT Claims
- — JSON Web Token의 클레임은 토큰에 포함된 발행자, 주체(sub), 청중(aud) 등 메타데이터로서 수신 측에서 권한과 신원을 검증하는 데 사용된다. 본문에서는 각 홉(hop)에서 sub와 aud 클레임이 어떻게 변형되어 전파되는지와 그에 따른 보안 의미가 핵심 기술 요소로 다뤄졌다. 클레임 변형 추적은 감사와 권한 경계 유지에 필수적이다.
AI 요약 · 북마크 · 개인 피드 설정 — 무료
출처 · 인용 안내
인용 시 "요약 출처: AI Trends (aitrends.kr)"를 표기하고, 사실 확인은 원문 보기 기준으로 진행해 주세요. 자세한 기준은 운영 정책을 참고해 주세요.
