섹션별 상세
AI 에이전트 보안의 근본적인 한계는 LLM의 비결정론적 특성에 기인한다. LLM은 신뢰할 수 있는 지침과 외부 데이터를 명확히 구분하지 못해 프롬프트 인젝션 공격에 취약하며, 이를 애플리케이션 코드 내에서만 방어하려고 하면 보안 경계가 불분명해지고 감사가 어려워진다.
Amazon Bedrock AgentCore Policy는 보안 정책을 에이전트 외부로 완전히 분리한다. 에이전트와 도구 사이의 Gateway에서 모든 요청을 가로채 Cedar 정책 엔진을 통해 평가하므로, 에이전트 코드의 버그나 모델의 오작동 여부와 상관없이 독립적인 보안 계층이 작동한다.

Cedar 정책 언어는 기계 효율적이며 인간이 감사하기 쉬운 구조를 제공한다. 'Default Deny(기본 거부)' 원칙과 'Forbid wins over Permit(차단 우선)' 규칙을 따르며, 루프가 없는 구조 덕분에 실행 지연 시간이 매우 짧고 안전한 평가가 가능하다.
정책 작성의 편의성을 위해 세 가지 방식을 지원한다. 자연어 설명을 Cedar 코드로 자동 변환하는 기능, 폼 기반 인터페이스, 그리고 직접적인 Cedar 코드 작성을 통해 보안 전문가부터 개발자까지 요구사항에 맞는 정책을 신속하게 구현할 수 있다.

의료 예약 에이전트 사례를 통해 실질적인 보안 시나리오를 구현한다. 환자가 본인의 데이터만 조회하도록 제한하는 ID 기반 정책, 읽기 권한(fhir:read)이 있는 사용자만 접근을 허용하는 권한 분리, 특정 시간 외 작업을 차단하는 리스크 제어 등을 통해 다층적 방어 체계를 구축한다.
cedar
permit(
principal,
action == AgentCore::Action::"Target1___getPatient",
resource == AgentCore::Gateway::"{gateway_arn}"
)
when {
principal.hasTag("role") && principal.getTag("role") == "patient" &&
context.input has patient_id &&
principal.hasTag("patient_id") &&
context.input.patient_id == principal.getTag("patient_id")
};환자가 자신의 ID와 일치하는 기록만 조회할 수 있도록 허용하는 Cedar 정책 예시

정책 적용 시 'LOG_ONLY' 모드를 제공하여 실제 트래픽을 차단하지 않고 정책의 동작을 먼저 검증할 수 있다. 관찰 로그를 통해 에이전트의 동작이 예상과 일치하는지 확인한 후 'Enforce' 모드로 전환하여 실시간 차단을 활성화함으로써 운영 안정성을 확보한다.
cedar
forbid(
principal,
action == AgentCore::Action::"Target1___getSlots",
resource == AgentCore::Gateway::"{gateway_arn}"
)
when {
context.input has date_string &&
(context.time.hour < 9 || context.time.hour > 21)
};진료 시간(09:00-21:00) 외에는 예약 슬롯 조회를 명시적으로 차단하는 정책 예시
용어 해설
- 시더(Cedar)
- — AWS에서 개발한 오픈 소스 정책 언어로, 애플리케이션 리소스에 대한 권한을 정의하고 강제하는 데 사용된다. '누가, 무엇을, 어디서' 할 수 있는지 선언적으로 기술하며, 수학적 증명이 가능할 정도로 정교하고 실행 속도가 매우 빠르다.
- 프롬프트 인젝션(Prompt Injection)
- — 사용자가 악의적인 입력을 통해 LLM의 원래 지침을 무시하고 공격자가 의도한 동작을 수행하게 만드는 공격 기법이다. 에이전트 시스템에서는 이를 통해 권한이 없는 도구를 호출하거나 민감한 데이터를 탈취할 위험이 있다.
- 결정론적(Deterministic)
- — 동일한 입력에 대해 항상 동일한 결과를 출력하는 특성을 의미한다. 확률적으로 동작하는 LLM과 달리, 보안 정책은 어떤 상황에서도 정해진 규칙에 따라 일관되게 허용 또는 거부를 판단해야 하므로 결정론적 설계가 필수적이다.
- 역할 및 속성 기반 접근 제어(RBAC/ABAC)
- — 사용자의 역할(Role)이나 속성(Attribute)에 따라 리소스 접근 권한을 관리하는 방식이다. Cedar는 이러한 속성들을 정책 조건문에 활용하여 매우 세밀하고 유연한 보안 경계를 설정할 수 있게 지원한다.
기술
- Amazon Bedrock AgentCore
- Cedar
- Amazon Cognito
- AWS HealthLake
- Python
활용 사례
- 의료 데이터 접근 제어
- 금융 거래 승인 워크플로우
- 시간/위치 기반 API 호출 제한
- 멀티 테넌트 환경의 데이터 격리
AI 분석 전체 내용 보기
AI 요약 · 북마크 · 개인 피드 설정 — 무료
출처 · 인용 안내
원문 발행 2026. 03. 13.수집 2026. 03. 13.출처 타입 RSS
인용 시 "요약 출처: AI Trends (aitrends.kr)"를 표기하고, 사실 확인은 원문 보기 기준으로 진행해 주세요. 자세한 기준은 운영 정책을 참고해 주세요.