Files
AWatch-rus/docs/PORTAL_WORKCABINET_UI_2026-06-04_RU.md
T

8.8 KiB

AWatch-rus Portal: рабочий кабинет

Дата: 2026-06-04

Цель изменения

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

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

Что изменено

  • Верхняя панель переименована в AWatch-rus Активность / Риски / Расследования.
  • Интерфейс переведен в промышленную компоновку:
    • темный левый sidebar;
    • светлая аналитическая рабочая область;
    • верхняя панель периода, подразделения и экспорта;
    • compact B2B/SOC карточки и таблицы.
  • Добавлены элементы отчета: период, подразделение, формирование отчета, экспорт Markdown/PDF/JSON, статус сбора данных.
  • Навигация приведена к продуктовой модели:
    • Обзор;
    • Сотрудники;
    • Подразделения;
    • Риски;
    • Расследования;
    • Сетевой периметр;
    • Отчеты.
    • Настройки.
  • Главный экран Пульс организации содержит Executive Dashboard для утреннего просмотра руководителем:
    • сотрудников в работе сегодня;
    • средний индекс активности;
    • WARN подразделений;
    • FAIL подразделений;
    • критических рисков;
    • недельный тренд активности.
  • Главный аналитический блок содержит:
    • ТОП-5 лучших подразделений;
    • ТОП-5 проблемных подразделений;
    • блок Требует внимания с форматом: заголовок проблемы, почему это важно, что проверить, рекомендуемое действие;
    • широкую таблицу Подразделения сегодня с колонками: подразделение, индекс активности, отклонение, статус, ответственный;
    • блок Аномалии с объяснением: что произошло, почему это риск, что проверить;
    • блок Топ рисков с read-only переходом к расследованиям.
    • Heat Map подразделений с колонками: подразделение, активность, отклонение, риск, ответственный, действие;
    • read-only карточку руководителя подразделения.
  • Раздел Настройки работает только на чтение и показывает: период расчета, рабочий день, пороги WARN/FAIL, источник правил, дату последнего пересчета.
  • Добавлены отдельные промышленные представления:
    • экран подразделений: рейтинг групп, ответственные, просадки и отклонения;
    • экран сотрудников: карточка сотрудника, активность, сессии, плановое время, последнее событие;
    • экран сетевого периметра: режим наблюдения без управления сетевыми правилами.
  • Селектор периода подключен к интерфейсу:
    • Сегодня показывает текущий дневной срез;
    • Неделя и Месяц пересчитывают управленческие карточки по накопленной истории тренда;
    • если истории недостаточно, портал явно показывает накоплено N/M дней;
    • детальные дневные экраны маркируются плашкой дневная детализация.
  • Первый экран показывает executive summary:
    • какие подразделения работают нормально;
    • где падает активность;
    • где есть риск;
    • что проверить;
    • кому поручить разбор;
    • куда открыть расследование без автоматического воздействия.
  • Блок работы сотрудников показывает загрузку, простои, перегруз, приложения, объяснение индекса и проверку правил.
  • Блок рисков использует темную тему и выводит риск/ИБ-срез без автоматического воздействия на сеть.
  • Блок расследований показывает инциденты, материалы, скриншоты, хеши и ссылки на выгрузку.
  • Отчеты дополнены типами: ежедневный, недельный, месячный, по подразделению, по сотруднику, по инциденту, акт пилота.

Важные ограничения

  • Фильтр периода влияет на управленческие представления портала. Фильтры подразделения и ответственного пока являются UI-контролами; backend-фильтрация должна добавляться отдельным изменением.
  • Индекс активности остается расчетной метрикой: активное время / плановое время. Взвешенный показатель объясняется отдельно через правила ролей и приложений.
  • Разделы рисков и расследований показывают риск-срез и материалы проверки. Это не заявляется как сертифицированная СЗИ.
  • Раздел сетевого периметра работает как витрина наблюдения. Он не меняет правила сети и не выполняет блокировки.
  • pfSense и сетевой периметр этим изменением не затрагивались.

Проверки

Локальные проверки:

export CARGO_TARGET_DIR=/tmp/detmir-adk-rust-target
node --check adk-rust/crates/detmir-portal/src/static/app.js
git diff --check
cargo test --manifest-path adk-rust/Cargo.toml -p detmir-portal
cargo clippy --manifest-path adk-rust/Cargo.toml --all-targets --all-features -- -D warnings
cargo build --release --manifest-path adk-rust/Cargo.toml -p detmir-portal

Боевые проверки после деплоя:

  • detmir-portal.service: active;
  • nginx: active;
  • detmir-portal-evidence.service: active;
  • /portal/: HTTP 200;
  • /portal/api/summary: HTTP 200;
  • /portal/api/operator: HTTP 200;
  • /portal/api/manager: HTTP 200;
  • /portal/api/owner: HTTP 200;
  • /portal/api/incidents: HTTP 200;
  • /portal/api/reports: HTTP 200;
  • /portal/api/readiness/bundle: HTTP 200;
  • /portal/api/workforce/policy/explain: HTTP 200;
  • /portal/api/dlp/evidence: HTTP 200.

Playwright smoke:

  • заголовок страницы: AWatch-rus Portal;
  • вкладки Обзор, Сотрудники, Подразделения, Риски, Расследования, Сетевой периметр, Отчеты, Настройки открываются;
  • JS-ошибок нет;
  • API-ответов с кодом 400+ нет;
  • раздел рисков включает темную тему.
  • смена периода Сегодня -> Неделя меняет содержимое страницы и показывает плашку периода.
  • scripts/detmir-portal-tabs-smoke.mjs проверяет все data-tab, наличие обработчиков в app.js, Executive Dashboard, строки read-only настроек и read-only переход из топ-рисков в расследования.