Files
AWatch-rus/docs/PORTAL_RU.md
T

6.9 KiB

AWatch-rus Portal

Назначение

Портал является рабочим кабинетом для трех ролей:

  • руководитель: пульс организации, активность, подразделения, риски;
  • ИБ: риск-сигналы, события безопасности, evidence;
  • расследователь: карточка инцидента, причины, проверяемые источники, отчет.

Главные экраны

  • Обзор - Executive Dashboard.
  • Сотрудники - карточки сотрудников и объяснение индекса.
  • Подразделения - сравнение групп, тренды и ответственные.
  • Риски - read-only контроль безопасности.
  • Расследования - инциденты, evidence и автоматическая read-only карточка расследования.
  • Сетевой периметр - read-only контекст внешних сетевых сигналов.
  • Отчеты - Markdown/PDF/JSON и управленческий текст.
  • Настройки - read-only параметры расчета.

Executive Dashboard

Показывает:

  • сотрудников в работе;
  • средний индекс активности;
  • WARN/FAIL подразделения;
  • критические риски;
  • недельный тренд;
  • достоверность данных агента;
  • топ-5 лучших и проблемных подразделений;
  • Heat Map;
  • блок Требует внимания.

Достоверность данных агента

Портал показывает карточку Достоверность данных агента в Обзор и Отчеты. Это управленческий вывод о том, можно ли использовать текущий Индекс активности и отчеты как подтвержденный KPI.

API сохраняет старое поле agent_quality и дополнительно отдает agent_quality_explain:

  • status;
  • title;
  • summary;
  • recommendation;
  • kpi_accepted.

Цвета статусов:

  • OK - зеленый, KPI подтвержден основным источником;
  • WARNING - желтый, данные собраны резервным способом;
  • DEGRADED - оранжевый, данные нельзя использовать как доказательный KPI;
  • UNKNOWN - серый, агент не передал diagnostics.

Карточка сначала показывает управленческий вывод, принято ли значение в KPI, и рекомендацию. Технические поля доступны в раскрываемом блоке:

  • источник коллектора;
  • всего сессий;
  • активных сессий;
  • RDP-сессий;
  • ошибка коллектора, если она есть.

Если diagnostics отсутствует, статус UNKNOWN, рекомендация - обновить Rust agent и проверить поступление telemetry JSONL. Если источник local_fallback, портал прямо пишет: Диагностический режим, данные не засчитываются в KPI.

Стабильность агента за 7 дней

Портал показывает мини-блок Стабильность агента за 7 дней. Он отвечает на вопрос, можно ли доверять недельному KPI, а не только текущему срезу.

GET /api/reports отдает:

  • agent_quality_history - последняя запись качества по каждому дню за 7-дневное окно;
  • agent_quality_history_summary - сводка по дням.

Элемент agent_quality_history содержит:

  • date;
  • status;
  • source;
  • kpi_accepted;
  • collector_error, если он есть.

Сводка считает:

  • сколько дней были OK;
  • сколько дней были WARNING, DEGRADED или UNKNOWN;
  • процент дней, когда KPI был принят.

Если за 7 дней меньше 5 дней OK, портал и executive summary показывают: KPI требует валидации: нестабильный сбор данных агента.

Качество данных по рабочим местам

Портал показывает карточку Качество данных по рабочим местам. Она отвечает на управленческий вопрос: какие узлы дают подтвержденные данные, а какие снижают доверие к KPI.

GET /api/reports отдает:

  • agent_quality_nodes - последняя запись качества по каждому hostname, при его отсутствии по machine_id, иначе unknown;
  • agent_quality_nodes_summary - сводка по узлам.

Элемент agent_quality_nodes содержит:

  • hostname;
  • last_seen_utc;
  • source;
  • status;
  • kpi_accepted;
  • sessions_total;
  • rdp_sessions;
  • collector_error, если он есть;
  • recommendation.

Сводка содержит:

  • total_nodes;
  • ok_nodes;
  • degraded_nodes - узлы в WARNING или DEGRADED;
  • unknown_nodes;
  • accepted_kpi_nodes_pct.

Если accepted_kpi_nodes_pct < 80 и узлы есть, executive summary показывает: KPI требует проверки: менее 80% узлов дают подтвержденные данные.

Главная страница не перегружается: показывается сводка и таблица максимум из 10 проблемных узлов. Источник local_fallback никогда не подтверждает KPI.

Risk -> Investigation

Кнопка Открыть расследование переводит пользователя в read-only карточку.

Карточка содержит:

  • incident_id;
  • risk_id;
  • department;
  • owner;
  • activity_index;
  • deviation;
  • status;
  • summary;
  • why_it_is_risk;
  • what_to_check;
  • recommended_actions;
  • evidence;
  • generated_at.

Предупреждение обязательно:

Расследование сформировано автоматически. Решение принимает ответственный сотрудник.

Проверка

Smoke-тест:

node scripts/detmir-portal-tabs-smoke.mjs

Тест проверяет все вкладки, read-only настройки и переход Risk -> Investigation.