feat(dlp): expose menu and document web review flow
This commit is contained in:
@@ -134,6 +134,13 @@ bash /root/bootstrap/apply_webui_ru_patch.sh
|
||||
systemctl restart activitywatch-server.service
|
||||
```
|
||||
|
||||
После применения патча доступны:
|
||||
|
||||
- верхнее меню `DLP` в Web UI;
|
||||
- DLP-страница bucket `aw-dlp-endpoint-signals_<HOST>`;
|
||||
- встроенный центр `DLP review и правила`;
|
||||
- служебные buckets `aw-dlp-review_<HOST>` и `aw-dlp-rules_<HOST>`.
|
||||
|
||||
### 2.5 Проверка сервера
|
||||
|
||||
В CT:
|
||||
@@ -152,6 +159,12 @@ grep -n 'aw-ru-patch\|aw-sw-cleanup' /opt/activitywatch/webui-ru/index.html
|
||||
- порт 5600 слушается;
|
||||
- в `index.html` присутствуют оба скрипта.
|
||||
|
||||
Дополнительно после первого входа в Web UI:
|
||||
|
||||
- `#/home` должен показывать один корректный пункт `DLP`;
|
||||
- `#/buckets/aw-dlp-endpoint-signals_<HOST>` должен открываться без ошибок;
|
||||
- сохранение review/rule должно создавать buckets `aw-dlp-review_<HOST>` и `aw-dlp-rules_<HOST>`.
|
||||
|
||||
---
|
||||
|
||||
## 3) Развёртывание Windows-клиентов (другой AD-домен)
|
||||
@@ -279,6 +292,9 @@ curl -sS http://127.0.0.1:5600/api/0/buckets | jq 'keys'
|
||||
- `aw-watcher-window_<HOST>`
|
||||
- `aw-watcher-web-<browser>_<HOST>`
|
||||
- `aw-detmir-web-category_<HOST>` (категоризованный поток)
|
||||
- `aw-dlp-endpoint-signals_<HOST>` (endpoint сигналы)
|
||||
- `aw-dlp-review_<HOST>` (ручная классификация через UI)
|
||||
- `aw-dlp-rules_<HOST>` (suppress/rule записи через UI)
|
||||
|
||||
Проверка событий браузера:
|
||||
|
||||
@@ -292,6 +308,31 @@ curl -sS "http://127.0.0.1:5600/api/0/buckets/aw-watcher-web-edge_<HOST>/events?
|
||||
curl -sS "http://127.0.0.1:5600/api/0/buckets/aw-detmir-web-category_<HOST>/events?limit=5" | jq
|
||||
```
|
||||
|
||||
Проверка DLP review/rules:
|
||||
|
||||
```bash
|
||||
curl -sS "http://127.0.0.1:5600/api/0/buckets/aw-dlp-review_<HOST>/events?limit=20" | jq
|
||||
curl -sS "http://127.0.0.1:5600/api/0/buckets/aw-dlp-rules_<HOST>/events?limit=20" | jq
|
||||
```
|
||||
|
||||
Ожидаемые поля review:
|
||||
|
||||
- `reviewId`
|
||||
- `signalType`
|
||||
- `verdict`
|
||||
- `category`
|
||||
- `comment`
|
||||
- `archived`
|
||||
|
||||
Ожидаемые поля rules:
|
||||
|
||||
- `ruleId`
|
||||
- `signalType`
|
||||
- `match`
|
||||
- `category`
|
||||
- `comment`
|
||||
- `enabled`
|
||||
|
||||
---
|
||||
|
||||
## 6) Сопровождение (обязательно)
|
||||
|
||||
+4
-1
@@ -94,7 +94,8 @@ systemctl restart activitywatch-server.service
|
||||
- копирует `aw-ru-patch.js` и `aw-sw-cleanup.js`;
|
||||
- делает backup `index.html`;
|
||||
- добавляет include в `index.html`;
|
||||
- заменяет `service-worker.js` cleanup-версией для сброса старого cache.
|
||||
- заменяет `service-worker.js` cleanup-версией для сброса старого cache;
|
||||
- включает DLP Web UI override: верхнее меню `DLP`, центр `DLP review и правила`, buckets `aw-dlp-review_<HOST>` и `aw-dlp-rules_<HOST>`.
|
||||
|
||||
## 6. Проверить сервис
|
||||
|
||||
@@ -119,6 +120,8 @@ grep -n 'aw-ru-patch\|aw-sw-cleanup' /opt/activitywatch/webui-ru/index.html
|
||||
- открывается `/`;
|
||||
- API доступен по ожидаемому URL;
|
||||
- после hard refresh видна русификация;
|
||||
- в верхнем меню доступен `DLP` и он открывает `#/buckets/aw-dlp-endpoint-signals_<HOST>`;
|
||||
- на DLP bucket-странице доступны секции `DLP review и правила`, `DLP Rules`, `DLP Review`;
|
||||
- reverse proxy не кэширует старую статику.
|
||||
|
||||
## 8. Что зафиксировать после ввода
|
||||
|
||||
@@ -8,6 +8,7 @@
|
||||
- LXC-контейнера с Debian 12;
|
||||
- `ActivityWatch Server` на Rust;
|
||||
- Web UI override с RU patch;
|
||||
- DLP Web UI overlay для review/rules поверх bucket `aw-dlp-endpoint-signals_<HOST>`;
|
||||
- systemd unit `activitywatch-server.service`.
|
||||
|
||||
Базовые правила:
|
||||
@@ -49,6 +50,7 @@
|
||||
- `/etc/systemd/system/activitywatch-server.service`;
|
||||
- `/opt/activitywatch/webui-ru/`;
|
||||
- `/opt/activitywatch/releases/`;
|
||||
- buckets `aw-dlp-review_*` и `aw-dlp-rules_*` через API export, если review/rule-классификация уже ведётся в UI;
|
||||
- конфиг reverse proxy, если он есть.
|
||||
|
||||
Пример:
|
||||
@@ -57,6 +59,9 @@
|
||||
vzdump <CT_ID> --mode snapshot --compress zstd --storage <BACKUP_STORAGE>
|
||||
pct exec <CT_ID> -- tar -C / -czf /root/activitywatch-config-backup.tgz \
|
||||
etc/activitywatch etc/systemd/system/activitywatch-server.service opt/activitywatch/webui-ru
|
||||
|
||||
curl -sS http://127.0.0.1:5600/api/0/buckets/aw-dlp-review_<HOST>/events?limit=500 > /root/aw-dlp-review-<HOST>.json
|
||||
curl -sS http://127.0.0.1:5600/api/0/buckets/aw-dlp-rules_<HOST>/events?limit=500 > /root/aw-dlp-rules-<HOST>.json
|
||||
```
|
||||
|
||||
## Rollback
|
||||
@@ -68,6 +73,8 @@ cp /opt/activitywatch/webui-ru/index.html.bak.<timestamp> /opt/activitywatch/web
|
||||
systemctl restart activitywatch-server.service
|
||||
```
|
||||
|
||||
Примечание: после rollback или повторного деплоя открыть UI с hard refresh, так как браузер может держать старую версию `ru-patch-v5.js`.
|
||||
|
||||
### Rollback server release
|
||||
|
||||
1. Остановить сервис.
|
||||
@@ -95,6 +102,12 @@ systemctl restart activitywatch-server.service
|
||||
6. Проверить API/UI.
|
||||
7. Зафиксировать результат.
|
||||
|
||||
После обновления UI отдельно проверить:
|
||||
|
||||
- `#/home` — есть один корректный пункт `DLP`;
|
||||
- `#/buckets/aw-dlp-endpoint-signals_<HOST>` — работают сохранение review/rule и списки `DLP Rules` / `DLP Review`;
|
||||
- API создаёт/читает buckets `aw-dlp-review_<HOST>` и `aw-dlp-rules_<HOST>` без ошибок `304/409`.
|
||||
|
||||
## Эскалация
|
||||
|
||||
Эскалировать сразу, если:
|
||||
|
||||
Reference in New Issue
Block a user