# Wazuh 主機納管覆蓋 Gate

## 目的

本 Gate 用來防止 Wazuh 用戶端消失事故被「半套修復」誤報為完成。它只接受脫敏、可交叉檢查的納管覆蓋證據，不接受 Dashboard 畫面、TCP transport、agent service active 或口頭回覆替代 manager registry truth。

## 目前只讀判定

| 項目 | 數值 | 判定 |
| --- | ---: | --- |
| 應納管節點範圍 | 6 | 已建立覆蓋矩陣 |
| 直接觀察 agent active / transport | 2 | 只能代表部分節點仍有連線 |
| 直接觀察無 agent transport | 1 | 需要 owner 判定安裝、服務或範圍 |
| SSH 只讀受阻 | 3 | 需要合法只讀 access 或脫敏 owner export |
| Manager registry accepted | 0 | 不得宣稱所有用戶端恢復 |
| Dashboard API 退化 | 1 | 需修 stored API / RBAC / rate-limit / TLS |
| Runtime gate | 0 | 不授權主機寫入或 active response |

## 不得誤判

- Transport 連線數不等於 Wazuh manager registry 已驗收。
- Dashboard 可訪問不等於 agent 清單正常。
- 只讀 route 回 200 不等於 Wazuh live metadata 已啟用。
- 任何重新註冊 agent、重啟 Wazuh、修改主機、調整防火牆、修改機密或 active response 都必須另走維護窗口、rollback owner 與人工批准。

## 綠燈前必備證據

1. Manager registry agent counts：總數、在線、離線、從未連線、最後連線時間窗。
2. 逐主機 agent scope matrix：只用公開別名，不列內網位址、agent 原名或 raw payload；欄位需符合 `WAZUH-AGENT-VISIBILITY-OWNER-EVIDENCE-PREFLIGHT.md` 的 manager registry 脫敏匯出契約。
3. Dashboard API / RBAC / TLS 修復讀回：stored API、rate-limit、run_as、TLS trust 都要有脫敏參照。
4. 唯讀認證中繼資料：只收 secret name、來源、owner、rotation / rollback owner，不收明文值、雜湊或片段。
5. Owner response：owner role / team、decision、decision reason、affected scope、redacted evidence refs、followup owner、rollback owner。
6. IwoooS 啟用後讀回：不得回傳 raw log、agent 原名、內網位址、secret 或 host output。

## Manager registry export 最小格式

Wazuh agents 是否真的恢復，必須以 manager registry 脫敏匯出交叉檢查。IwoooS 目前接受下列最小格式：

- 範圍：`managed_core_node_a`、`managed_core_node_b`、`managed_dev_node_a`、`managed_dev_node_b`、`managed_control_node_a`、`managed_control_node_b`。
- 收集方式：`wazuh_api_readonly_redacted_counts` 或 `manager_agent_control_redacted_export`。
- 逐主機欄位：`node_alias`、`scope_role`、`registry_presence`、`agent_status_bucket`、`last_seen_state`、`manager_group_ref`、`agent_id_redacted_ref`、`gap_reason`、`redacted_evidence_ref`。
- 驗收邊界：`registry_export_received_count=0`、`registry_export_accepted_count=0` 時，不得宣稱所有主機已納管。

## 後續優先順序

| 優先 | 工作 | 完成度 |
| --- | --- | ---: |
| P0-A | Manager registry 只讀計數與逐主機矩陣脫敏匯出 | 0% |
| P0-B | Dashboard stored API / RBAC / rate-limit / TLS 修復 | 0% |
| P0-C | 直接無 transport 節點的合法只讀後檢 | 0% |
| P0-D | SSH 受阻節點 owner export 或只讀 access | 0% |
| P0-E | IwoooS live metadata env owner gate | 0% |

## 邊界

本文件與 `wazuh-managed-host-coverage-gate.snapshot.json` 都是 repo 內只讀治理證據；不連線 Wazuh、不收 secret、不重新註冊 agent、不重啟服務、不修改主機、不發 active response、不做 Kali active scan。
