quality / commitlint (push) Skipped
quality / changes (push) Successful in 5s
quality / docker-check (push) Skipped
quality / web (push) Successful in 57s
quality / api (push) Failing after 30s
CD / quality (push) Failing after 1m36s
CD / publish (push) Skipped
- Updated environment configurations to include CDN Manager in the RETURN_TO_ALLOWLIST. - Enhanced target app resolution to recognize CDN-related hosts. - Added CDN Manager to the application switcher and updated relevant documentation. - Included tests to verify the correct mapping of CDN hosts. Co-authored-by: Cursor <[email protected]>
2.0 KiB
2.0 KiB
Audit ingest — интеграция приложений с Auth Portal
Центральный журнал: GET /api/v1/admin/audit (только admin).
Приложения пишут локально и дублируют события в portal.
Endpoint
POST /api/v1/ingest/audit
Authorization: Bearer <AUDIT_INGEST_SECRET>
Content-Type: application/json
Body
{
"events": [
{
"event_id": "uuid-unique-per-event",
"source_app": "vps",
"action": "vps.vps.create",
"severity": "info",
"actor_user_id": "…",
"actor_email": "[email protected]",
"actor_name": "Name",
"target_type": "app_resource",
"target_id": "entity-id",
"summary": "Человекочитаемое описание",
"details": { "entity": "vps", "diff": {} },
"ip": "1.2.3.4",
"created_at": "2026-07-21T00:00:00.000Z"
}
]
}
events: 1–50 за запросsource_app:vps|cfdm|bgp|fw|dns|cdn(неportal)event_id: идемпотентность (дубликаты →duplicates++)- Ответ:
{ "accepted": N, "duplicates": M }
Env
| Где | Переменная |
|---|---|
| auth-portal | AUDIT_INGEST_SECRET |
| apps (vps / cfdm / bgp / fw / cdn) | AUTH_PORTAL_URL + AUTH_AUDIT_INGEST_SECRET (тот же секрет) |
Dev default secret: dev-audit-ingest-secret.
Dual-write
- Записать в локальный
audit_log - Fire-and-forget
POSTв portal (timeout ~2s) - Ошибка push не должна ломать CRUD
Фильтры admin UI
/admin/audit— source_app + type tabs + range- Клик по пользователю на
/admin— Sheet с событиями, гдеactor_user_idилиtarget_id= user id
Preview: solution-users-1 · solution-users-6