rara/agent-roadmap/sdd/operations-productization/multi-project-security-and-audit/SDD.md
toki d4546ecbfd
Some checks are pending
ci / validate (push) Waiting to run
add agent-roadmap
2026-07-18 19:31:48 +09:00

4.8 KiB

SDD: Identity·권한과 감사

위치

상태

[초안]

SDD 잠금

  • 상태: 잠금
  • 사용자 리뷰: 요청됨
  • 잠금 항목:
    • [D01] 초기 identity source of truth와 연동 방식

문제 / 비목표

  • 문제: project boundary만으로는 사용자·서비스 actor mapping, resource·action authorization, secret access와 immutable audit·retention을 제품 수준으로 운영할 수 없다.
  • 비목표:
    • identity provider 제품 구현
    • 기본 project-scoped resource identity 재구현
    • retrieval backend 내부 ACL 엔진 대체

Source of Truth

영역 기준 메모
Roadmap Milestone 문서 identity·권한·감사 범위
Project Boundary Control Plane Resource API SDD resource scope와 cross-project 기본 차단
Secret Integration 카탈로그 SDD secret reference와 runtime resolution
User Decision USER_REVIEW.md identity source of truth

State Machine

상태 진입 조건 다음 상태 근거
pending external 또는 local identity가 처음 관찰됨 active, rejected mapping record
active identity mapping과 project membership이 유효함 suspended, revoked membership revision
suspended 일시 차단 또는 provider 상태 불명확 active, revoked admin action
revoked mapping·credential 사용이 종료됨 없음 revoke audit

Interface Contract

  • 입력: authenticated principal, project, resource, action, reason과 correlation identity
  • 출력: allow·deny decision, matched policy revision, secret resolution scope와 immutable audit event
  • 금지:
    • identity mapping이 불명확한 principal을 implicit admin으로 처리하지 않는다.
    • authorization decision 없이 secret을 resolve하지 않는다.
    • audit actor·reason·result를 사후 수정하지 않는다.

Acceptance Scenarios

ID Milestone Task Given When Then
S01 identity-boundary user·service·external principal mapping·sync source와 project membership이 추적 가능하게 연결된다
S02 rbac role·resource·action policy API·worker 요청 같은 policy revision으로 allow·deny가 결정된다
S03 secret-scope identity·project·executor secret resolve 승인된 범위만 일회성으로 resolve된다
S04 audit-events 변경·거부·실패 action 처리 actor·target·reason·result가 immutable event로 남는다
S05 retention-policy trace·feedback·dataset·audit 만료·삭제 유형별 redaction·retention·deletion 규칙이 적용된다
S06 isolation-tests unauthorized·mapping 오류·tampering case negative suite action·secret이 차단되고 audit 변조가 검출된다

Evidence Map

Scenario Required Evidence agent-task 연결 완료 Evidence 기대
S01 identity mapping lifecycle test agent-task/m-multi-project-security-and-audit/... identity-boundary evidence
S02 role·permission matrix agent-task/m-multi-project-security-and-audit/... rbac allow·deny evidence
S03 cross-project·executor secret test agent-task/m-multi-project-security-and-audit/... secret-scope deny evidence
S04 immutable audit test agent-task/m-multi-project-security-and-audit/... audit-events chain
S05 retention·redaction deletion test agent-task/m-multi-project-security-and-audit/... retention-policy evidence
S06 authorization·tamper negative suite agent-task/m-multi-project-security-and-audit/... isolation-tests PASS

Cross-repo Dependencies

  • 없음

Drift Check

  • Milestone 기능 Task와 Acceptance Scenario가 일치한다.
  • Evidence Map이 code-review/complete.log에서 검증 가능하다.
  • project boundary와 identity·authorization 책임을 분리했다.
  • 사용자 결정 [D01]이 해결되었다.

사용자 리뷰 이력

작업 컨텍스트

  • 표준선: deny-by-default, external principal mapping, policy revision, scoped secret, immutable audit
  • Milestone은 [스케치]이며 [D01]과 승격 조건이 해소될 때까지 구현 잠금 상태를 유지한다.