ops-agents: Vault 게이트웨이 프로토콜 섹션 추가 (Syn/Heimdall 양쪽 e2e 검증 완료)

This commit is contained in:
kappa
2026-04-09 15:25:20 +09:00
parent 4bd868e219
commit 49ea3a5f80

View File

@@ -61,7 +61,43 @@ Syn 컨테이너는 hp2 subnet routing 덕분에 **Tailscale 설치 없이** tai
**공동/협업**:
- CrowdSec 시나리오: Heimdall 소유, Syn은 APISIX/SafeLine용 시나리오 파라미터 튜닝 제안만
- 두 에이전트 모두 Vault·OpenMemory·Outline 읽기·쓰기 OK (MCP 경유)
- 두 에이전트 모두 OpenMemory·Outline 읽기·쓰기 OK (MCP 경유). **Vault는 kappa 게이트웨이 ASK-only** (아래 섹션).
## Vault 접근 — kappa 게이트웨이 프로토콜
2026-04-09 도입. 에이전트는 Vault에 직접 접근할 수 없다. 중앙 집중 감사·블라스트 래디우스 제한이 목적.
**구현**:
- Heimdall `~/.mcp.json` · Syn `~/syn/.mcp.json` 에서 `vault` 항목 완전 제거
- 두 에이전트 모두 `mcp__vault__*` 도구를 물리적으로 호출 불가
- CLAUDE.md 에 규칙·포맷 명시
**프로토콜**:
| 단계 | 행위자 | 포맷 |
|------|-------|------|
| 1 | 에이전트 | `[SYN ASK] vault:<path> <key> 필요 (용도: <한줄>)` → kappa tmux 0:1 에 주입 |
| 2 | kappa | Vault 조회 (MCP `mcp__vault__read_secret`) |
| 3a | kappa | `[KAPPA->SYN] <path> <key> = <value>` → 에이전트 tmux 에 주입 (성공) |
| 3b | kappa | `[KAPPA->SYN] DENIED: <사유/정정힌트>` → 에이전트 tmux 에 주입 (거절) |
| 4 | 에이전트 | 값 사용·즉시 폐기, 파일/OpenMemory/Obsidian 평문 저장 금지 |
| 5 | 에이전트 | `[SYN DONE] vault ... 수신 확인, 미저장 폐기` CC |
**규칙**:
- ASK 한 번에 여러 키를 동시 요청 가능 (같은 작업 범위 내)
- 예외 없음 — bunnycdn/openmemory/nocodb 등 다른 MCP는 그대로 동작
- 환경변수 잔존(`$VAULT_TOKEN`, `$VAULT_ADDR`) 신뢰 금지
- 검증: 2026-04-09 Syn + Heimdall 양쪽에서 e2e 테스트 완료 (DENIED 경로 포함)
**이점**:
- 기술적 격리 (에이전트가 규칙을 잊거나 혼동해도 Vault 도달 불가)
- 중앙 감사 로그 (kappa 세션 대화 히스토리에 모든 ASK/응답 기록)
- 동기 승인 (kappa 부재 시 자동 차단)
**한계**:
- kappa 세션 활성 상태 필요 (에이전트 자율 작업 중 kappa 부재 시 시크릿 요구 작업 blocking)
- kappa 세션 대화 히스토리에 시크릿 평문 잔존 (`/clear` 또는 세션 종료 시 사라짐)
- kappa 본인의 MCP 권한 남용 방지책은 별도 필요 (vault audit log on Vault 서버 사이드 병행 권장)
## 배포 관리