feat(portal): add executive action center

This commit is contained in:
igor04091968
2026-06-07 16:39:49 +03:00
parent 307170b128
commit 2b41fb14c7
11 changed files with 1069 additions and 3 deletions
+98
View File
@@ -0,0 +1,98 @@
# Executive Action Center
Executive Action Center преобразует существующую аналитику AWatch-rus в
конкретные управленческие действия.
## Назначение
Модуль отвечает на вопросы:
- что рекомендуется сделать;
- насколько это срочно;
- кому адресовано действие;
- почему система предлагает именно это действие.
Action Center не выполняет действия автоматически. Он не блокирует
пользователей, не меняет политики и не является DLP/EDR/SIEM.
## Контракт действия
```json
{
"priority": "high",
"title": "Проверить подразделение с низким индексом активности",
"summary": "Индекс активности ниже управленческого порога; требуется проверка причины просадки",
"owner_role": "manager",
"recommended_deadline": "24h",
"reason_codes": [
"LOW_WORKFORCE_KPI",
"HIGH_REMOTE_ACTIVITY"
],
"evidence": [
"Workforce KPI ниже целевого уровня: 62%",
"Рост удаленных сессий влияет на управленческий риск"
]
}
```
## API
Endpoint:
```text
GET /api/actions
```
Поддерживается role filtering через `role` query parameter или
`X-AWatch-Role` header.
`/api/reports` дополнительно содержит:
```json
{
"recommended_actions": []
}
```
## Уровни приоритета
- `low` - наблюдение, контроль на следующем регулярном срезе;
- `medium` - требуется плановая проверка;
- `high` - требуется действие в течение 24 часов;
- `critical` - требуется срочная ручная проверка, обычно до 4 часов.
## Rule-based правила
| Reason code | Сигнал | Рекомендуемое действие | Адресат |
|---|---|---|---|
| `LOW_WORKFORCE_KPI` | Workforce KPI ниже целевого уровня | Проверить подразделение с низким индексом активности | `manager` |
| `HIGH_REMOTE_ACTIVITY` | Фактор удаленных сессий в explainability | Проверить причину роста удаленных сессий | `manager` |
| `LOW_COVERAGE` | Низкое покрытие агентов или плохой SLA полноты данных | Проверить состояние агентов | `admin` |
| `HIGH_UEBA` | Повышенный UEBA score | Передать данные в контур ИБ | `security` |
| `HIGH_SECURITY_CORRELATION` | Высокая корреляция активности и ИБ-событий | Проверить связь активности и ИБ-событий | `security` |
| `INCIDENT_CANDIDATE` | Есть кандидаты на проверку | Провести расследование кандидатов | `forensics` |
| `RISK_NARRATIVE_HIGH` | Высокий Risk Narrative score | Назначить владельца корректирующих действий | `executive` |
| `NORMAL_OBSERVATION` | Критичные правила не сработали | Продолжить наблюдение | `manager` |
Все правила детерминированные. ML, LLM и прогнозные модели не используются.
## Ролевое отображение
- `executive` видит управленческие, менеджерские и эксплуатационные действия;
- `manager` видит действия для руководителя подразделения;
- `security` видит действия ИБ и действия, которые нужно передать в
расследование;
- `forensics` видит действия расследований и связанные действия ИБ;
- `admin` видит полный список.
Сервер фильтрует действия по роли. UI скрывает нерелевантные действия только
после серверной фильтрации.
## Ограничения
- Action Center является decision-support слоем, а не auto-remediation.
- Рекомендации требуют ручной проверки ответственным контуром.
- Модуль не подтверждает нарушение сам по себе.
- pfSense остается `contract_only`, если ingestion отдельно не включен и не
прошел приемку.
- Planned/Future collectors не считаются реализованными источниками данных.
@@ -253,4 +253,57 @@ docs/EXECUTIVE_ACTION_CENTER_RU.md
6. Документация.
7. Тесты.
8. Проверки.
9. Ограничения.
9. Ограничения.
## Выполнение
Статус: done.
Файлы:
- `adk-rust/crates/detmir-portal/src/executive_actions.rs`;
- `adk-rust/crates/detmir-portal/src/main.rs`;
- `adk-rust/crates/detmir-portal/src/static/app.js`;
- `adk-rust/crates/detmir-portal/src/static/app.css`;
- `adk-rust/crates/detmir-portal/src/contracts/openapi.json`;
- `adk-rust/crates/detmir-portal/src/contracts/typescript.d.ts`;
- `adk-rust/crates/detmir-portal/src/production/limits.rs`;
- `scripts/awatch-production-hardening-smoke.mjs`;
- `docs/EXECUTIVE_ACTION_CENTER_RU.md`;
- `README.md`.
Новые endpoints:
- `GET /api/actions`.
Action model:
- `priority`;
- `title`;
- `summary`;
- `owner_role`;
- `recommended_deadline`;
- `reason_codes`;
- `evidence`.
Rule engine:
- deterministic rule-based;
- использует существующие сигналы Workforce KPI, UEBA, coverage, security
correlation, incident candidates и Risk Narrative;
- не использует ML/LLM;
- не выполняет auto-remediation.
UI:
- Executive View показывает блок `Рекомендуемые действия`;
- Security View показывает блок `Рекомендуемые действия ИБ` с ИБ-действиями и
действиями, передаваемыми в расследование;
- Markdown report содержит раздел `## Рекомендуемые действия`.
Ограничения:
- рекомендации не выполняются автоматически;
- пользователи не блокируются;
- политики не меняются;
- DLP/EDR/ML/LLM не добавлялись.