2.7 KiB
2.7 KiB
資安人工決策紀錄契約
| 項目 | 內容 |
|---|---|
| 日期 | 2026-05-13 |
| 狀態 | 草案 |
| Schema | docs/schemas/security_approval_decision_record_v1.schema.json |
| Snapshot | docs/security/security-approval-decision-record.snapshot.json |
| 模式 | decision_record_only |
| runtime 執行授權 | false |
0. 核心結論
security_approval_decision_record_v1 是 S3.1 的人工決策稽核格式。
它只保存人工決策本身,例如批准範圍、拒絕、延後、要求補 evidence 或維持 blocked。
它不是 runner,也不是授權 token。任何決策紀錄都必須維持 execution_authorized=false。
S3.2 的 security_approval_review_packet_v1 只負責把待審項目整理成封包。Review packet 不是決策;只有人工審完後,才可把結果寫入本契約。
S3.3 的 security_approval_state_transition_v1 只負責把本契約中的決策轉成 next state。State transition 不是 runner,也不會讓 approve_scope 直接變成可執行。
S3.4 的 security_followup_runtime_gate_v1 只負責顯示未來若要進 runtime gate 時需要的前置 evidence、preflight checks 與 rollback / disable requirement。目前沒有 active runtime gate。
1. 目前狀態
| 指標 | 數量 |
|---|---|
| Decision records | 0 |
| Approved scope | 0 |
| Rejected | 0 |
| Deferred | 0 |
| Request more evidence | 0 |
| Keep blocked | 0 |
| Runtime actions authorized | false |
2. AwoooP 可做
- 對
security_approval_gate_v1的 gate item 記錄人工決策。 - 保存 reviewer、時間、evidence refs 與批准範圍。
- 顯示哪些決策仍需要 follow-up runtime gate。
- 將決策紀錄寫入 Audit evidence。
- 將拒絕、延後或補 evidence 的原因顯示給 Operator。
- 連回原始
security_approval_review_packet_v1,讓 Operator 可追溯決策前看到的 evidence 與限制。 - 依
security_approval_state_transition_v1顯示決策後狀態,例如scope_approved_waiting_runtime_gate或blocked_by_default。 - 依
security_followup_runtime_gate_v1顯示後續 runtime gate 準備模板,但仍不執行。
3. AwoooP 不可做
- 不把 decision record 當成執行命令。
- 不因為
approve_scope就自動執行。 - 不啟動 scan、credentialed scan 或 Kali
/execute。 - 不建立 GitHub repo、不改 visibility、不 sync refs、不切 GitHub primary。
- 不保存 raw secret、token、cookie、private key、credential value 或 exploit payload。
4. 階段定位
S3.1 只是讓人工決策可追溯。
它讓治理面更清楚,但仍然維持低摩擦:沒有 runtime enforcement,沒有自動修復,沒有把 approval queue 接成 runner。