Tarantool CE/EE Documentation portal logo
Помощь
Обновлена 15 сентября 2026 г. в 08:55

Журнал аудита

В Тarantool Cluster Manager доступен журнал аудита для отслеживания действий пользователей и событий, связанных с безопасностью, например:

  • Удачные и неудачные попытки входа.
  • Доступ к кластерам, их настройкам, хранимым данным и моделям данных.
  • Изменения в системе контроля доступа: пользователи, роли, пароли, конфигурации LDAP. Полный список событий аудита TCM приведен в разделе Типы событий.

По умолчанию ведение журнала аудита в TCM отключено. Чтобы начать запись событий, необходимо его включить и настроить.

Журнал аудита хранит сведения о событиях в формате JSON. Каждая запись журнала содержит тип события, описание, время, затронутые объекты и другие сведения, которые могут быть использованы для расследования инцидентов. Полный список полей приведен в разделе Структура событий журнала аудита.

Также в TCM доступен встроенный интерфейс для чтения и поиска по журналу аудита. Подробности см. в разделе Просмотр журнала аудита.

Включение журнала аудита

Включить и настроить журнал аудита можно двумя способами:

  • в интерфейсе TCM.
  • в YAML-файле конфигурации TCM.

Чтобы включить ведение журнала аудита в интерфейсе TCM, перейдите в раздел Audit settings и нажмите Enable. Чтобы дополнительно отправлять события журнала аудита в стандартный поток вывода, нажмите Send to stdout.

Также можно предварительно настроить ведение журнала аудита при первом запуске TCM, задав параметр initial-settings.auditlog в файле конфигурации (tcm.yaml).

Настройка журнала аудита

События аудита TCM могут записываться в локальный файл или отправляться на сервер syslog. Чтобы настроить журнал аудита, перейдите в раздел Audit settings.

Запись в файл

Чтобы записывать журнал аудита TCM в файл:

  1. Перейдите в раздел Audit settings и выберите протокол file.
  2. Укажите имя файла журнала аудита. Файл сохраняется в заданном пользователем каталоге, путь к которому может быть как абсолютным, так и относительным. Файл создается в рабочем каталоге TCM.
  3. Настройте ротацию файлов журнала: максимальный размер и срок хранения файлов, а также количество одновременно хранимых файлов.
  4. (Необязательно) Включите сжатие файлов журнала аудита.

Параметры конфигурации:

  • Output file name. Имя файла журнала аудита. Значение по умолчанию: audit.log
  • Max size (in MB). Максимальный размер файла журнала до выполнения ротации, в мегабайтах. Значение по умолчанию: 100.
  • Max backups. Максимальное количество хранимых файлов журнала аудита. Значение по умолчанию: 10.
  • Max age (in days). Максимальный срок хранения файлов журнала аудита в днях. Значение по умолчанию: 30.
  • Compress. Сжатие файлов журнала аудита в архивы gzip при ротации.

Отправка в syslog

Если используется централизованная система управления журналами на базе syslog, можно настроить TCM для отправки журнала аудита на сервер syslog:

  1. Перейдите в раздел Audit settings и выберите протокол syslog.
  2. Введите URI сервера syslog и выберите сетевой протокол. Как правило, syslogd использует порт 514 и протокол UDP.
  3. Укажите параметры журналирования syslog: время ожидания, приоритет и категорию (facility).

Параметры конфигурации:

  • Protocol. Сетевой протокол, используемый для подключения к серверу syslog. Значение по умолчанию: udp.
  • Output. URI сервера syslog. Значение по умолчанию: 127.0.0.1:514 (localhost).
  • Timeout. Время ожидания записи в syslog в формате длительности ISO 8601. Значение по умолчанию: PT2S (две секунды).
  • Priority. Уровень важности syslog. Значение по умолчанию: info.
  • Facility. Категория (facility) syslog. Значение по умолчанию: local0.

Выбор событий аудита для записи

При включенном журнале аудита TCM записывает все события аудита, перечисленные в разделе Типы событий. Чтобы снизить нагрузку и привести журнал аудита в соответствие с конкретными требованиями безопасности, можно записывать только выбранные события. Например, это могут быть события управления учетными записями пользователей или события доступа к данным кластера.

Чтобы выбрать события для записи в журнал аудита, перейдите в раздел Audit settings и введите их типы в поле Filters по одному, нажимая клавишу Enter после каждого типа.

Чтобы удалить тип события из списка фильтров, нажмите на значок крестика рядом с ним.

Просмотр журнала аудита

Если журнал аудита записывается в файл, его можно просмотреть в TCM на странице Audit log. На этой странице доступны просмотр и поиск событий.

Чтобы просмотреть сведения о записанном событии аудита, нажмите на соответствующую строку в таблице.

Чтобы найти событие, используйте строку поиска в верхней части страницы. Учитывайте, что поиск чувствителен к регистру. Например, чтобы найти события с уровнем важности ALARM, введите ALARM, а не alarm.

Структура событий журнала аудита

Все записи журнала аудита TCM содержат обязательные поля, перечисленные в таблице ниже.

Поле

Описание

Пример

time

Время события

2023-11-23T12:05:27.099+07:00

severity

Уровень важности события: VERBOSE, INFO, WARNING или ALARM

INFO

type

Тип события аудита

user.update

description

Человекочитаемое описание события

Update user

uuid

UUID события

f8744f51-5760-40c3-ae2d-0b4d6b44836f

user

UUID пользователя, инициировавшего событие

942a4f54-cf7f-4f46-80ce-3511dbbb57b7

remote

Удаленный хост, с которого инициировано событие

100.96.163.226:48722

host

Хост TCM, на котором произошло событие

100.96.163.226:8080

userAgent

Сведения о клиентском приложении и платформе, использованных для инициирования события

Mozilla/5.0 (Macintosh, Intel, Mac OS X 10_15_7); AppleWebKit/537.36 (KHTML, like Gecko); Chrome/119.0.0.0; Safari/537.36

permission

Разрешение, использованное для инициирования события

["admin.users.write"]

result

Результат события: ok или nok

ok

err

Человекочитаемое описание ошибки для событий с результатом nok

failed to login

fields

Дополнительные поля для определенных типов событий в формате «ключ-значение»

Примеры ключей: clusterId в событиях, связанных с кластером; payload в событиях, включающих отправку данных на сервер; username в событиях current.* или auth.*.

Пример записи журнала аудита при успешной попытке входа:

{    "time": "2023-11-23T12:01:27.247+07:00",    "severity": "INFO",    "description": "Login user",    "type": "current.login",    "uuid": "4b9c2dd1-d9a1-4b40-a448-6bef4a0e5c79",    "user": "",    "remote": "127.0.0.1:63370",    "user-agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36",    "host": "127.0.0.1:8080",    "permissions": ,    "result": "ok",    "fields": [        {            "Key": "username",            "Value": "admin"        },        {            "Key": "method",            "Value": "null"        },        {            "Key": "output",            "Value": "true"        }    ]}

Типы событий

В таблице ниже перечислены все возможные значения поля type для событий журнала аудита TCM.

Тип события

Описание

auth.fail

Ошибка аутентификации

auth.ok

Успешная аутентификация

access.denied

Попытка доступа к объекту без требуемого разрешения

crud.insert

Данные добавлены с помощью операций CRUD

crud.delete

Данные удалены с помощью операций CRUD

user.add

Пользователь добавлен

user.update

Пользователь обновлен

user.delete

Пользователь удален

secret.add

Секрет пользователя добавлен

secret.update

Секрет пользователя обновлен

secret.block

Секрет пользователя заблокирован

secret.unblock

Секрет пользователя разблокирован

secret.delete

Секрет пользователя удален

secret.expire

Срок действия секрета пользователя истек

session.revoke

Сессия отозвана

session.revokeuser

Все сессии пользователя отозваны

explorer.insert

Данные добавлены в кластер

explorer.delete

Мастер переключен вручную

test.devmode

Выполнен переход в режим разработки

auditlog.config

Конфигурация журнала аудита изменена

passwordpolicy.save

Политика паролей изменена

passwordpolicy.resetpasswords

Срок действия всех паролей истек по инициативе администратора

ddl.save

Модель данных кластера сохранена

ddl.apply

Модель данных кластера применена

cluster.config.save

Конфигурация кластера сохранена

cluster.config.reset

Сохраненная конфигурация кластера сброшена

cluster.config.apply

Конфигурация кластера применена

current.logout

Пользователь завершил сессию

current.revoke

Пользователь отозвал сессию

current.revokeall

Пользователь отозвал все активные сессии

current.changepassword

Пользователь изменил пароль

role.add

Роль добавлена

role.update

Роль обновлена

role.delete

Роль удалена

cluster.add

Кластер добавлен

cluster.update

Кластер обновлен

cluster.delete

Кластер удален

ldap.testlogin

Выполнен тест входа для конфигурации LDAP

ldap.testconnection

Выполнен тест подключения для конфигурации LDAP

ldap.add

Конфигурация LDAP добавлена

ldap.update

Конфигурация LDAP обновлена

ldap.delete

Конфигурация LDAP удалена

addon.enable

Дополнение включено

addon.disable

Дополнение отключено

addon.delete

Дополнение удалено

tcmstate.save

Низкоуровневые сведения сохранены в хранилище TCM (для отладки)

tcmstate.delete

Низкоуровневые сведения удалены из хранилища TCM (для отладки)