В документе описаны предусмотренные в Почте системы аудита действий пользователя и их отличия. Описано как включить сбор статистики по IP и настроить отправку событий во внешние хранилища.
Документ нужен системным администраторам организации.
В Почте предусмотрены 2 системы аудита действий пользователей:
- Основанная на БД ScyllaDB — включается по умолчанию. Контейнер с базой данных: beccasc*. Контейнер с API: becca*.
- Основанная на БД PostgreSQL. Контейнер с базой данных: rebeccapg*. Контейнер с API: rebecca*.
- Система на ScyllaDB имеет возможность дублировать действия пользователя во внешние хранилища.
- Система на PostgreSQL позволяет искать события без привязки к пользователю, то есть просматривать все события из определенной группы. Система на ScyllaDB позволяет искать только действия конкретного пользователя.
- Система на PostgreSQL потребляет меньше оперативной памяти, поэтому и называется «облегченной версией».
Действия пользователя в системе сопровождаются отправкой событий. События делятся на следующие группы:
- MailAdmin — действия администратора в Почте.
- Calendar — события Календаря.
- Becca — внутренние события системы аудита на ScyllaDB.
- Mail — события почты и авторизации.
- Cloud — события Диска.
- SpammerDB.
- Alias — события алиасов почтовых ящиков.
Чтобы посмотреть список всех событий и подробное описание каждого события:
- Перейдите на страницу
https://biz.<mail_domain>и авторизуйтесь в панели администратора. - Перейдите по URL-адресу
https://biz.<mail_domain>/oper/becca/docs.
Здесь по каждому событию вы найдете:
- Проект, к которому относится событие и идентификатор события.
- Описание события и комментарий к нему.
- Компонент и параметры события.
- Используется ли событие.

Сбор статистики нужно включать только для системы на ScyllaDB. Для системы на PostgreSQL она включена по умолчанию.
-
Откройте веб-интерфейс установщика
http://<server-address>:8888. -
Перейдите на вкладку Настройки → Настройки компонентов → Система учета действий пользователя.
-
Нажмите кнопку редактировать
. -
Включите опцию Включить статистику по IP.
-
Задайте Время хранения событий по IP в секундах. По умолчанию устанавливается 3 месяца.
-
Кликните по кнопке Сохранить.
-
Перейдите на главную страницу веб-интерфейса установщика и запустите автоматическую установку.

-
Подтвердить запуск автоматической установки, нажав на кнопку Запустить во всплывающем окне.
-
Перейдите на страницу
https://biz.<mail_domain>и авторизуйтесь в панели администратора. -
Перейдите по URL-адресу
https://biz.<mail_domain>/oper/. -
В меню слева, в разделе Действия пользователя, выберите Просмотр.
-
Укажите email или IP пользователя. Если пользуетесь системой на PostgreSQL, то поле можно оставить пустым.
-
Задайте период для вывода событий или воспользуйтесь одним из готовых фильтров.
-
Выберите группу событий.
-
Задайте выводимое количество событий.
-
Нажмите на кнопку Искать.

Результаты поиска можно экспортировать в .json или .csv файлы.
В самом низу страницы можно переключаться между страницами и управлять количеством событий выводимых на одной странице.

Поиск событий производится по содержимому в столбце Args. В каждой ячейке столбца Args перечислены названия и значения полей. Названия полей выделены жирным шрифтом.
Особенности работы поиска:
-
Поиск производится только по значениям полей. То есть запрос
rid: f69c40ffне выдаст нужное событие, в отличии отf69c40ff.

-
Поиск чувствителен к пробелам. Если перед запросом
f69c40ffпоставить пробел, то поиск не выдаст нужное событие.
-
Поисковой запрос влияет на экспорт событий в .json или .csv файлы.
Пример экспорта в .csv файл, для запроса
f69c40ff:time;ip;email;ua;projectDescription;code;eventDescription;arguments"""31.07.2024, 16:15:08""";100.70.80.43;admin@admin.qdit;-;Почтовые и авторизационные события;swa_auth_cube_session_delete;Удалена сессия пользователя;SessionXID,7VATpyDq,c,limit,h,cube1.qdit,rid,f69c40ff
-
Откройте веб-интерфейс установщика
http://server-adress:8888. -
Перейдите на вкладку Настройки → Интеграции → Дублирование действий пользователей во внешние хранилища.
-
Нажмите кнопку редактировать
. -
Включите флаг того хранилища, которое вы планируете использовать: MySQL, Logstash и rsyslog. Есть возможность включения TLS-шифрования.
-
Заполните необходимые поля:
-
MySQL
-
Предварительно создайте таблицу, в которую будут сохраняться логи.
-
Адрес сервера MySQL — введите адрес сервера MySQL, на котором будут храниться логи.
-
Порт сервера MySQL — порт, открытый в вашей БД для VK Workspace.
-
Название схемы в MySQL — тип архитектуры (схемы) вашей БД.
-
Имя пользователя MySQL — пользователь БД, имеющий права на запись.
-
Пароль пользователя MySQL — введите пароль пользователя, указанного в поле выше.

-
Logstash — Введите адрес сервера и порт.
-
rsyslog — чтобы передавать данные в rsyslog, введите адрес сервера, его порт, протокол подключения и syslogtag.

-
-
Кликните по кнопке Сохранить.
-
В случае кластерной установки распределите контейнеры bein* и becca* по гипервизорам с типом фронт.
-
Перейдите на главную страницу веб-интерфейса установщика и запустите автоматическую установку.

-
Подтвердить запуск автоматической установки, нажав на кнопку Запустить во всплывающем окне.
Описание
Отслеживаются входы в почтовый ящик и действия, выполняемые владельцем ящика. Записи об активности пользователей попадают в выделенное хранилище BECCA.
Состояние по умолчанию
Аудит почтовых ящиков включен, веб-интерфейс BECCA выключен.
Рекомендуемое состояние
Аудит почтовых ящиков включен, веб-интерфейс BECCA включен.
Настройка доступа к веб-интерфейсу BECCA
Веб-интерфейс BECCA находится по адресу https://becca.<mail_domain>. Чтобы получить доступ выполните ряд настроек в веб-интерфейсе установщика http://server-address:8888:
-
Включите флаг Включить статистику по IP на вкладке Настройки в разделе Настройки компонентов → Система учета действий пользователей
-
Укажите IP/подсети, для которых будет разрешен доступ к домену
becca.<mail_domain>, в разделе Настройки → Настройки компонентов → Ограничение доступа к доменам. -
Нажмите на синюю кнопку Сохранить, чтобы сохранить изменения.

-
Перейдите на главную страницу веб-интерфейса установщика и запустить автоматическую установку, нажав на зеленую кнопку Play.
-
Подключитесь к гипервизору, отведенному под мониторинг.
-
Откройте для редактирования файл
/home/deployer/configs/pg/rebeccapg/migrator/pgcron.json:vi /home/deployer/configs/pg/rebeccapg/migrator/pgcron.json -
В следующей строке укажите частоту очистки событий:
"schedule": "{{ getCustomEnv "REBECCA_BEIN_EVENTS_DELETE_CRON" "0 2 * * *" }}"По умолчанию события очищаются раз в день, в 02:00.
-
В следующей строке укажите длительность хранения событий:
"command": "DELETE from events where extract_timestamp_from_uuid_v7(time) < now() - interval '{{ getCustomEnv ",REBECCA_BEIN_EVENTS_DELETE_OLDER_THEN_IN_DAYS" "20"По умолчанию события старше 30 дней удаляются. В строке выше удаляются события старше 20 дней.
-
Перейдите в веб-интерфейс установщика и для всех контейнеров rebecca* выполните шаг init_db_fixtures.
Технический писатель: Груздев Никита