Guardrails 거버넌스
선택적 평가(guardContent), Cross-Account, InvokeGuardrailChecks API
거버넌스
선택적 평가(guardContent), Cross-Account, InvokeGuardrailChecks API
LLM 출력을 안전하게 제어한다
8가지 보호 메커니즘으로 생성형 AI의 위험을 관리하는 서비스
조직 거버넌스
Selective Guarding · Cross-Account · 버전 관리 · 비용
조직 거버넌스
역할별 차등 적용 · 조직 전체 강제 · 버전 기반 안전 배포
팀을 넘어 조직 전체로
메시지 역할별로 다르게 적용하고, Organizations 전체에 강제하고, 불변 버전 스냅샷으로 안전하게 배포합니다.
- Selective Guarding — 메시지 역할별 차등 적용
- Cross-Account — Organizations 전체 자동 강제
- 버전 관리 — Draft → 테스트 → 버전 발행 → 버전 고정 호출
- 비용 — 텍스트 1,000자 단위 과금
멤버 계정이 해제할 수 없는 강제가 컴플라이언스를 보장합니다 — 롤백은 이전 버전 번호로 되돌리면 즉시 이뤄집니다.
Selective Guarding — 역할별 차등 적용
시스템·사용자·어시스턴트 메시지별로 다른 가드레일 적용
| 메시지 역할 | 적용 대상 | 예시 |
|---|---|---|
| System | ✗ 시스템 프롬프트는 검사 생략 | 내부 지시문이므로 검사 대상에서 제외 |
| User | ✓ 입력 검사 | PII, Prompt Attack, Denied Topics |
| Assistant | ✓ 출력 검사 | Content Filter, Grounding |
시스템 프롬프트에 가드레일을 걸면 정상 지시도 차단될 수 있습니다 — Selective Guarding으로 해결합니다.
Cross-Account Safeguards
Organizations 관리 계정에서 모든 멤버 계정에 자동 적용
-
1
관리 계정
중앙 보안팀이 Guardrail 정의.
-
2
조직 정책
관리 계정의 Guardrail 정책이 멤버 계정에 자동 적용.
-
3
멤버 계정
개별 팀이 해제 불가 — 컴플라이언스 보장.
-
4
감사
CloudWatch로 차단 이벤트 중앙 모니터링.
핵심은 멤버 계정이 해제할 수 없다는 점입니다 — 팀별 선의에 기대지 않고 조직 차원에서 컴플라이언스를 보장합니다.
버전 관리 — 불변 스냅샷 배포
Draft에서 버전 발행, 롤백까지 — 안전한 배포 사이클
-
1
Draft 수정
작업 사본에서 정책을 수정하고 테스트합니다.
-
2
버전 발행
발행 시 불변 스냅샷이 생성됩니다 — 이후 수정 불가.
-
3
버전 고정 호출
호출 시 guardrailVersion으로 특정 버전을 고정합니다.
-
4
롤백 · A/B
롤백은 이전 버전 번호로 되돌리고, A/B 테스트는 두 버전을 병행 호출합니다.
버전은 불변 스냅샷이고 호출이 guardrailVersion으로 고정되므로 롤백은 이전 버전 번호로 되돌리면 즉시 처리됩니다.
과금 구조 — 4가지 과금 축
무엇에 얼마가 과금되는지 — 정책 구성 전에 확인할 과금 단위
텍스트
1,000자 단위 과금
이미지
이미지당 과금
Automated Reasoning
별도 과금 체계
Contextual Grounding
소스 청크 길이 비례 과금
Automated Reasoning과 Contextual Grounding은 별도 축으로 과금됩니다 — 정책에 넣기 전에 과금 단위부터 확인합니다.
통합 패턴
Converse API · AgentCore Policy · InvokeGuardrailChecks
통합 패턴
모델 호출 · 정책 엔진 · 즉석 검사 — 3가지 통합 경로
통합 경로 3가지
모델 호출에 파라미터로 붙이거나, 도구 권한 정책과 조합하거나, 리소스 없이 임의 지점에서 검사합니다.
- Converse API — guardrailConfig 파라미터 하나
- AgentCore Policy — 도구 권한(Cedar) + 콘텐츠 안전
- InvokeGuardrailChecks — 리소스 없이 즉석 검사
가장 단순한 통합은 guardrailConfig 파라미터 하나입니다 — 에이전트 루프 중간에는 InvokeGuardrailChecks를 씁니다.
Converse API 통합
guardrailConfig 파라미터 하나로 가드레일 적용
# 평소와 같은 Converse 호출 — 모델·메시지는 그대로
response = bedrock.converse(
modelId="us.anthropic.claude-sonnet-4-6",
messages=[{"role": "user", "content": [{"text": query}]}],
# guardrailConfig 블록만 추가 — 버전 고정 + 차단 사유 추적(trace)
guardrailConfig={
"guardrailIdentifier": "my-guardrail-id",
"guardrailVersion": "DRAFT",
"trace": "enabled"
}
)
기존 Converse 호출에 guardrailConfig 파라미터 하나를 더하면 끝입니다 — 코드 변경은 이 블록이 전부입니다.
AgentCore Policy + Guardrails 통합
도구 권한(Cedar) + 콘텐츠 안전(Guardrails)을 하나로
Cedar 정책 (AgentCore Policy)
- "누가 어떤 도구를 호출할 수 있는가"
- 액션 레벨 권한 제어
- permit/forbid 이진 판정
Guardrails
- "콘텐츠가 안전한가"
- 입출력 콘텐츠 검사
- 점수 기반 임계값 판정
Policy는 도구 접근 제어, Guardrails는 콘텐츠 안전 — 상호 보완 관계입니다.
InvokeGuardrailChecks API
Guardrail 리소스 없이 개별 세이프가드를 즉석 실행
리소스리스
CreateGuardrail 없이 API 한 번으로 검사. 에이전트 루프 중간에 삽입 가능
Detect-only
차단/마스킹 안 함 — 숫자 점수만 반환. 앱이 임계값과 동작을 결정
3종 세이프가드
Content Filter (severity), Prompt Attack (severity), Sensitive Info (confidence + offset)
차단 대신 숫자 점수만 반환하므로 임계값과 동작은 앱이 결정합니다 — 에이전트 루프 중간에 삽입할 수 있습니다.
프로덕션 안전벨트
입력과 출력 양방향 검사 — 8가지 메커니즘의 지향점
모델 밖의 안전장치 — 입력도 출력도 모두 검사한다
콘텐츠·정보·검증·거버넌스 — 8가지 메커니즘이 프로덕션의 안전벨트
Bedrock Guardrails 실습
콘텐츠 필터링, PII 마스킹, Contextual Grounding을 설정합니다
학습 목표
- Content Filters 유해 카테고리 임계값 설정
- PII Filters MASK 모드로 개인정보 자동 마스킹
- Contextual Grounding으로 환각 답변 차단
콘텐츠·정보·논리·조직 4개 층의 방어