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

88 lines
5.6 KiB
Markdown

# AWatch-rus Portal: рабочий кабинет
Дата: 2026-06-04
## Цель изменения
Портал переведен из технической "админки логов" в рабочий кабинет для трех ролей:
- руководитель: управленческая сводка, показатели активности, отклонения, отчеты;
- ИБ: риск-срез, проверки данных, состояние контрольных сигналов;
- расследователь: карточки инцидентов, материалы проверки, хеши и выгрузка материалов.
## Что изменено
- Верхняя панель переименована в `AWatch-rus Активность / Риски / Расследования`.
- Добавлены элементы отчета: период, подразделение, ответственный, текстовый отчет/PDF, статус сбора данных.
- Навигация приведена к продуктовой модели:
- `Пульс организации`;
- `Рабочее время`;
- `Подразделения`;
- `Сотрудники`;
- `Риски`;
- `Расследования`;
- `Сетевой периметр`;
- `Отчеты`.
- Добавлены отдельные промышленные представления:
- экран подразделений: рейтинг групп, ответственные, просадки и отклонения;
- экран сотрудников: карточка сотрудника, активность, сессии, плановое время, последнее событие;
- экран сетевого периметра: режим наблюдения без управления сетевыми правилами.
- Первый экран показывает executive summary:
- индекс активности за день;
- активные сотрудники;
- отклонения от нормы;
- подразделения с просадкой;
- риски ИБ;
- новые инциденты;
- готовность отчета;
- доказательная база.
- Блок работы сотрудников показывает загрузку, простои, перегруз, приложения, объяснение индекса и проверку правил.
- Блок рисков использует темную тему и выводит риск/ИБ-срез без автоматического воздействия на сеть.
- Блок расследований показывает инциденты, материалы, скриншоты, хеши и ссылки на выгрузку.
- Отчеты дополнены типами: ежедневный, недельный, месячный, по подразделению, по сотруднику, по инциденту, акт пилота.
## Важные ограничения
- Фильтры периода, подразделения и ответственного пока являются UI-контролами. Backend-фильтрация должна добавляться отдельным изменением, чтобы не искажать текущие данные.
- `Индекс активности` остается расчетной метрикой: активное время / плановое время. Взвешенный показатель объясняется отдельно через правила ролей и приложений.
- Разделы рисков и расследований показывают риск-срез и материалы проверки. Это не заявляется как сертифицированная СЗИ.
- Раздел сетевого периметра работает как витрина наблюдения. Он не меняет правила сети и не выполняет блокировки.
- pfSense и сетевой периметр этим изменением не затрагивались.
## Проверки
Локальные проверки:
```bash
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 -p detmir-portal --all-targets -- -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+ нет;
- раздел рисков включает темную тему.