ligbox-ops-platform/specs/002-wazuh-integration/spec.md
Ligbox Spec Hub 3a2c64834b Initial import: ligbox-ops-platform + specs + LAPTOP + obsidian merge (CT130)
Source: VM122 /opt + obsidian-infra + LAPTOP
Hub: CT130 spec-hub 10.10.10.130
2026-06-19 17:26:41 +00:00

33 lines
1.3 KiB
Markdown

# Feature Specification: Integrações externas — Wazuh (002)
**Branch**: `002-wazuh-integration` | **Created**: 2026-06-08
## Objetivo
Permitir que **qualquer serviço de infra** envie eventos para o Ligbox Ops Desk via webhook genérico. Primeira integração: **Wazuh VM104** (alertas nível ≥ 10).
## User Stories
### P1 — Webhook genérico por origem
Ops recebe `POST /api/v1/webhooks/ingress/{source}` com secret por integração; regista evento e cria ticket conforme regras da origem.
### P1 — Wazuh → Desk
Alertas de segurança (level ≥ 10) no Wazuh manager aparecem como tickets no Desk com agente, regra, severidade e IP.
### P2 — UI por origem
Filtro de eventos/tickets por origem (`vm112-onboard`, `wazuh`) e badge de severidade Wazuh.
## Functional Requirements
- FR-001: Endpoint `POST /api/v1/webhooks/ingress/{source}` com auth por secret
- FR-002: Secrets configuráveis: `WEBHOOK_SECRET` (onboard), `WAZUH_WEBHOOK_SECRET`
- FR-003: Wazuh envia alert JSON nativo; API normaliza para evento `wazuh.alert`
- FR-004: Tickets Wazuh apenas se `rule.level >= 10`
- FR-005: LAN-only (`10.10.10.122:8080`)
- FR-006: UI filtra eventos por `source`
- FR-007: Tenant VM104 Wazuh registado
## Out of Scope
- Poll Wazuh API (fase posterior)
- Expor webhook ingress na internet pública