메인 콘텐츠로 건너뛰기
규칙이 프로덕션 트래픽을 차단하기 전에, 올바른 것에 발동하고 다른 것에는 발동하지 않는지 알고 싶을 것입니다. OrcaRouter는 세 가지 자세를 제공합니다 — observe, shadow, enforce — 매 단계에서 가시성을 가지고 점진적으로 롤아웃하고 놀라움 없이 할 수 있게 합니다. 이 페이지는 각 자세가 기계적으로 무엇을 의미하는지, 이들을 어떻게 거치는지, 그리고 자율성 수준이 단 하나의 단계로 이 모두를 어떻게 설정하는지 설명합니다.

1. 한눈에 보는 세 가지 자세

자세트래픽에 일어나는 것메커니즘사용 시점
Observe모든 트래픽이 허용됩니다; 정책 없는 호출이 커버리지 갭으로 로깅됩니다워크스페이스 수준 observe mode 켬; guardrail 규칙이 flag 액션 사용; firewall default_verdictaudit기준선 발견 — 규칙을 하나도 작성하기 전에 에이전트가 실제로 무엇을 하는지 이해
Shadow트래픽이 허용됩니다; 정책이 평가하고 차단할 법한 것이 [shadow] would …로 로깅됩니다firewall 정책의 per-policy shadow_mode 플래그 켬안전한 사전 프로덕션 검증 — 트래픽에 닿기 전에 정책이 올바르게 발동하는지 확인
Enforce실제 판정이 적용됩니다 — deny는 차단하고, sanitize는 삭제하고, pending_approval은 보류합니다Shadow mode 끔; guardrail 액션이 block / mask로 설정됨; firewall 판정이 라이브shadow에서 정책을 검증한 후의 프로덕션 강제
역할 요구사항. 모든 워크스페이스 멤버가 정책, 설정, 발견된 툴 뷰를 읽을 수 있습니다; firewall EventsRuns 피드는 Developer 역할이 필요합니다. 설정, 정책 액션, 또는 shadow_mode 변경도 Developer 이상이 필요합니다.

2. Observe 자세 — 규칙을 만들기 전에 측정

Observe 자세는 단일 스위치가 아닙니다. “모든 것을 허용하고, 모든 것을 기록한다”를 생성하는 세 가지 독립적인 메커니즘의 조합입니다:

Firewall observe mode (워크스페이스 설정)

툴 호출이 정책이 전혀 없을 때 — 키 연결도 워크스페이스 기본값도 없을 때 — firewall의 워크스페이스 수준 observe mode가 무슨 일이 일어나는지 결정합니다:
  • Observe mode 켬: 호출이 허용되고 커버리지 으로 로깅됩니다. Discovered Tools 뷰가 이 갭 이벤트에서 채워지며, 에이전트가 어떤 규칙도 커버하지 않고 실행하는 툴이 정확히 무엇인지 보여줍니다.
  • Observe mode 끔: 호출이 조용히 허용됩니다 — 기능을 한 번도 활성화하지 않은 워크스페이스와 바이트 단위로 동일.
Observe mode는 갭 탐지 표면입니다. 정책이 해석되지 않을 때만 발동합니다. audit으로 설정된 정책을 갖는 것과 동일하지 않습니다.

Firewall audit 판정 (정책별 기본값)

정책이 해석되지만 어떤 규칙도 툴 호출에 매칭되지 않을 때, 정책의 default_verdict가 적용됩니다. default_verdict의 기본값은 audit 입니다 — 호출을 허용하고 검토를 위해 기록합니다. 규칙 없이 구성 변경 없이 새 정책은 아무것도 차단하지 않고 조용히 허용하지도 않습니다: 보이는 모든 것을 감사합니다. audit는 또한 일반 규칙 판정입니다. 매칭되어 audit를 생성하는 규칙은 호출을 통과시키고 기록합니다 — firewall에 대한 guardrail 감사 모드 유사체.

Guardrail flag 액션 (규칙별 액션)

guardrail 측에서, flag 액션은 observe 동등물입니다: 규칙이 발동하고, Matches 피드에 매치가 기록되고, 요청은 변경되지 않고 계속됩니다. 차단 없음. 삭제 없음. block 또는 mask로 전환하기 전에 규칙을 측정하고 싶을 때 flag를 사용하세요 — 얼마나 자주 무엇에 발동하는지 확인합니다.
이 세 가지가 함께 observe 자세를 생성합니다: observe mode는 커버되지 않은 툴 호출을 잡고; audit 판정은 정책 아래에 있지만 아직 특정 규칙 아래에는 없는 툴 호출을 커버하고; flag 액션은 아직 강제할 준비가 되지 않은 guardrail 검사를 커버합니다.

3. Shadow 자세 — 강제하기 전에 검증

Shadow mode는 firewall 정책의 per-policy 플래그 (shadow_mode: true)입니다. 켜져 있을 때:
  • 정책이 프로덕션에서와 정확히 동일하게 모든 툴 호출을 평가합니다 — 규칙이 매칭되고, 판정이 계산되고, 인자 조건이 테스트됩니다.
  • 모든 강제 판정 (deny, sanitize, pending_approval)이 툴에 도달하기 전에 audit으로 강등됩니다.
  • 로깅된 이유에 [shadow] would …가 접두되어 이벤트 피드에서 차단되거나, 정화되거나, 보류될 것을 정확히 볼 수 있습니다.
Shadow mode는 안전한 롤아웃 스위치입니다. 정책을 작성하고, shadow를 켜고, 실제 트래픽을 가리키고, 몇 시간 또는 며칠 동안 이벤트와 실행 뷰를 관찰하고, 정책이 올바른 툴에 발동하고 예상치 못한 것에는 발동하지 않음을 확인한 다음, shadow mode를 꺼서 강제를 시작하세요.
Guardrails는 정책 수준에서 shadow_mode 동등물이 없습니다 — block 또는 mask로 전환하기 전에 개별 guardrail 검사를 관찰하려면 규칙별로 flag 액션을 사용하세요.

4. Enforce 자세 — 실제 판정, 실제 결과

Enforce 자세에서는 아무것도 강등되지 않습니다:
  • Firewall deny → 에이전트가 툴 오류 (MCP) 또는 HTTP 400 firewall_blocked (inbound 표면)를 봅니다. 오류는 툴과 이유를 명시합니다. skip-retry로 표시됩니다.
  • Firewall sanitize → 매치된 부분 문자열이 툴 인자에서 삭제되고 정화된 호출이 전달됩니다.
  • Firewall pending_approval → 호출이 보류됩니다; 에이전트가 폴링할 승인 id와 함께 HTTP 400 firewall_approval_pending을 받습니다.
  • Guardrail block → HTTP 400 guardrail_blocked, 발동된 guardrail과 규칙을 명시합니다. 쿼터 소모 없음.
  • Guardrail mask → 매치가 삭제됩니다 (예: jane@acme.com[EMAIL]) 그리고 요청이 정화된 텍스트로 계속됩니다.
Enforce 자세에 도달하려면: firewall 정책에서 shadow_mode를 끄고, guardrail 규칙 액션을 flag에서 적절하게 block 또는 mask로 변경하세요.

5. 권장 롤아웃

1

Observe — 에이전트가 하는 것을 발견합니다

워크스페이스 observe mode를 켭니다 (PUT /api/workspace/firewall/settings, firewall_observe_mode: true). firewall을 정책 없이 두거나 (또는 default_verdictaudit인 정책) 남겨둡니다. 측정하고 싶은 guardrail 규칙에 flag 액션을 추가합니다.Discovered Tools 뷰가 에이전트가 하는 모든 툴 호출로 채워지는 것을 보고, covered 또는 gap으로 표시됩니다. 이것을 첫 번째 정책 규칙을 작성하는 입력으로 사용하세요 — 가상의 트래픽이 아닌 실제 트래픽에 대한 규칙을 작성하고 있습니다.Discovered Tools 뷰가 안정화되고 의도적인 규칙을 작성하기에 충분한 데이터가 있을 때까지 이것을 실행하게 두세요.
2

Shadow — 강제 전에 검증합니다

shadow_mode: true인 firewall 정책을 작성합니다. 관리하려는 키에 연결하거나 (또는 워크스페이스 기본값으로 설정). guardrail의 경우, 이 단계에서 규칙 액션을 flag로 유지합니다.정책이 이제 모든 실제 툴 호출을 평가하고 무엇을 할지 로깅합니다. EventsRuns 뷰를 열고 [shadow] 접두사로 필터링합니다. 확인:
  • 의도한 툴과 인자 패턴에 발동합니다.
  • 허용하고 싶은 것에는 발동하지 않습니다 (거짓 양성).
규칙을 조정하고, 다시 관찰하고, 반복합니다. shadow 로그가 올바르게 보이면, 다음으로 이동합니다.
3

Enforce — 스위치를 뒤집습니다

정책에서 shadow_mode: false를 설정합니다. flag로 관찰하던 guardrail 규칙에 대해, 액션을 적절하게 block 또는 mask로 변경합니다.처음 한 시간 동안 예상치 못한 차단에 대해 Events 피드를 모니터링합니다. 자율성 감사 로그의 Undo 액션을 사용하면 필요한 경우 한 번의 클릭으로 이전 상태를 복원할 수 있습니다.

6. 자율성 수준 — 한 번에 모두 설정

정책을 규칙별로 조정하는 것이 정밀한 경로입니다. 자율성 수준이 빠른 경로입니다 — 단일 제어가 원자적으로 워크스페이스의 Firewall Guardrails 자세를 하나의 트랜잭션에서 설정하며, 원클릭 실행 취소를 제공합니다:
수준생성되는 자세
permissiveObserve 자세: 강제 정책 없음, guardrails 없음, 워크스페이스 observe mode — 모든 것을 볼 수 있고 아무것도 차단되지 않습니다. 위의 Observe 단계에 매핑됩니다.
balanced기본 판정 audit, 하지만 파괴적 셸은 거부됨; PII Shield가 감사 전용 모드로 실행됩니다 (PII 플래그); observe mode . 트래픽 형태를 알면 권장 시작 자세입니다.
tight전체 강제: 기본 거부, 파괴적 셸과 SSRF egress 거부됨; PII Shield + Secrets Blocker guardrails 강제됨 (PII와 시크릿에 대해 요청 검사); observe mode .
POST /api/workspace/firewall/autonomy로 적용합니다 (Developer+). Simulate 엔드포인트 (GET /api/workspace/firewall/simulate?level=)가 적용하기 전에 수준 변경이 무엇을 할지 미리 봅니다.
자율성 수준은 위에서 설명한 동일한 메커니즘 위의 편의 레이어입니다 — default_verdict, observe mode, firewall 규칙, guardrail 규칙 액션을 설정합니다. shadow_mode토글하지 않습니다; 그것은 수동 per-policy 제어로 남습니다. 항상 수준을 적용한 후 개별 설정을 재정의할 수 있습니다.

7. 메커니즘 맵 — 어떤 설정이 무엇을 하는가

이 표는 권위 있는 레퍼런스입니다. 네 용어는 별개입니다 — 혼동하지 마세요:
용어종류제어하는 것
Observe mode워크스페이스 설정툴 호출이 정책 없이 해석될 때의 동작. 켬 → 갭으로 로깅 (Discovered Tools). 끔 → 조용한 허용.
audit 판정정책 / 규칙 판정정책 아래에 있는 툴 호출이 매칭되거나 (기본으로 폴백) 할 때의 동작. 허용 + 기록. 기본 default_verdict.
flag 액션Guardrail 규칙 액션Guardrail 검사가 트래픽을 허용하고 매치를 기록합니다. guardrails에 대한 강제 없이 관찰하는 액션.
shadow_modePer-firewall-policy 플래그모든 강제 판정 (deny/sanitize/pending_approval)을 audit으로 강등하고 이유에 [shadow] would …를 접두합니다.

에이전트 보안 기준선

제로 트러스트 에이전트 보안을 위한 권장 시작 자세와 5분 설정.

Agent Firewall

정책, 규칙, 판정, shadow mode, MCP 게이트웨이에 대한 전체 레퍼런스.
강제 모드는 이진 켬/끔이 아닙니다. observe → shadow → enforce를 거치면 규칙이 트래픽을 차단하기 전에 실제 트래픽에서 검증됩니다.