Объекты
Аудит баз данных

Аудит баз данных

Раздел Объекты \ Аудит БД предназначен для настройки аудита на уровне базы данных. Здесь администратор может управлять параметрами логирования для каждого объекта БД индивидуально.

ℹ️

Возможности настройки аудита зависят от типа СУБД и её версии. Некоторые базы данных поддерживают детальную настройку для каждого объекта, другие — только включение/выключение аудита на уровне расширения.

Общие сведения

Для каждой базы данных доступна своя конфигурация аудита. Интерфейс управления логированием открывается из контекстного меню подключения в разделе Базы данных через пункт "Управление логированием".

Информационная панель

В верхней части окна отображается информация о подключении:

ПолеОписание
Сервер БДIP-адрес или DNS-имя сервера
Экземпляр БДНазвание экземпляра базы данных
ПортНомер порта подключения
Тип СУБДТип системы управления базой данных

Фильтрация объектов

Для поиска объектов доступны фильтры:

  • Схема объекта БД — фильтрация по схеме
  • Имя объекта БД — поиск по названию объекта
  • Типы привилегий — фильтрация по типу операций

Аудит для Oracle

Управление логированием Oracle

Oracle поддерживает наиболее детальную настройку аудита. Для каждого объекта базы данных можно индивидуально настроить логирование различных операций.

Структура таблицы объектов

КолонкаОписание
Схема объекта БДСхема, которой принадлежит объект (APPQOSSYS, AUDSYS, CTXSYS и др.)
Имя объекта БДНазвание объекта (таблицы, представления, процедуры)
Тип объекта БДТип объекта: TABLE, VIEW, PROCEDURE и др.
SelectНастройка аудита операций чтения
InsertНастройка аудита операций вставки
UpdateНастройка аудита операций обновления
DeleteНастройка аудита операций удаления
AlterНастройка аудита операций изменения структуры
RenameНастройка аудита операций переименования
ExecuteНастройка аудита выполнения (для процедур/функций)
GrantНастройка аудита операций назначения прав

Значения статусов операций

Для каждой операции отображается статус в формате "[Успех] | [Отказ]":

  • Первое значение — аудит при успешном выполнении операции (Доступ разрешен)
  • Второе значение — аудит при отказе в доступе (Отказ в доступе)

Возможные значения:

  • Выкл. — аудит отключен
  • Сесс. — аудит на уровне сессии (одна запись на сессию)
  • Дост. — аудит на уровне доступа (запись каждого обращения)

Настройка параметров логирования объекта

Контекстное меню объекта

При клике правой кнопкой мыши на объекте доступны действия:

  • Параметры логирования — открывает форму детальной настройки аудита
  • Информация об объекте — переход на страницу объекта в Справочнике объектов

Форма параметров логирования

Форма параметров логирования объекта

Форма позволяет настроить аудит для каждой операции с объектом:

Информация об объекте:

  • Схема объекта БД
  • Имя объекта БД
  • Тип объекта БД

Настраиваемые операции:

ОперацияОписание
SELECTЧтение данных из объекта
INSERTДобавление новых записей
UPDATEИзменение существующих записей
DELETEУдаление записей
ALTERИзменение структуры объекта
RENAMEПереименование объекта
EXECUTEВыполнение (для процедур и функций)
GRANTНазначение прав доступа

Для каждой операции доступны две колонки:

  • Доступ разрешен — логирование при успешном выполнении операции
  • Отказ в доступе — логирование при отклонении операции

Варианты настройки:

  • Выключен — аудит не ведется
  • Сессия — события записываются один раз за сессию
  • Доступ — каждое обращение записывается отдельно

Дополнительные опции:

  • Логировать пользователей группы Lector — включить в аудит служебных пользователей
  • Исключить из логирования пользователей группы Lector — исключить служебные учетные записи

Аудит для PostgreSQL

Управление логированием PostgreSQL

PostgreSQL имеет ограниченные возможности настройки аудита по сравнению с Oracle. Система отображает информацию о состоянии расширения аудита (pgAudit) и позволяет просматривать объекты БД.

Структура таблицы объектов

КолонкаОписание
Схема объекта БДСхема объекта (information_schema, public и др.)
Имя объекта БДНазвание объекта
Тип объекта БДТип: function, table, view
Log StatementНастройка логирования запросов (all, none, ddl, mod)
PGAudit установленСтатус расширения pgAudit (Вкл./Выкл.)
Аудит (системный)Состояние системного аудита
Аудит (база данных)Состояние аудита на уровне БД
Аудит (объект)Состояние аудита на уровне объекта
Направление логаКуда направляются логи (stderr, syslog и др.)
⚠️

Для PostgreSQL детальная настройка аудита каждого объекта недоступна через интерфейс. Настройка выполняется на уровне конфигурации расширения pgAudit в самой базе данных.

Особенности для разных СУБД

Возможности аудита различаются в зависимости от типа и версии СУБД:

СУБДДетальная настройкаОсобенности
OracleДаПолная настройка для каждого объекта и операции
PostgreSQLНетТолько отображение статуса pgAudit
MySQLЧастичноЗависит от версии и настроек
MS SQL ServerЧастичноЗависит от редакции и версии
MongoDBЧастичноАудит через профилирование
ClickHouseОграниченоБазовое логирование запросов
📋

Возможности аудита также зависят от версии СУБД. Некоторые функции могут быть недоступны в старых версиях или требовать дополнительной настройки на стороне сервера БД.

Предупреждения и ошибки

Предупреждение об ошибке конфигурации аудита

Система отображает предупреждения при обнаружении проблем с конфигурацией аудита. Например:

"Внимание! В текущем экземпляре БД параметр инициализации audit_trail = none. Обратитесь к документации."

Это означает, что на стороне базы данных аудит не настроен. Для корректной работы необходимо:

  1. Настроить параметр audit_trail на сервере БД
  2. Перезапустить экземпляр базы данных (для Oracle)
  3. Обновить информацию в системе
🚨

При отображении предупреждения аудит событий не будет работать, даже если настройки в интерфейсе активированы. Необходимо устранить проблему на стороне СУБД.

Экспорт данных

Список объектов с настройками аудита можно экспортировать в формате CSV с помощью кнопки "CSV" в левом верхнем углу таблицы.

Рекомендации по настройке аудита

Что следует логировать

  • Критичные таблицы — таблицы с персональными данными, финансовой информацией
  • Системные объекты — изменения в системных таблицах и представлениях
  • Операции с правами — GRANT и REVOKE для отслеживания изменений доступа
  • DDL-операции — ALTER, DROP, CREATE для контроля изменений структуры

Оптимизация производительности

  • Не включайте аудит всех операций на всех объектах — это создаст избыточную нагрузку
  • Используйте аудит "по сессии" вместо "по доступу" для часто используемых объектов
  • Исключайте служебные учетные записи из аудита, если они генерируют много событий

Регулярный мониторинг

  • Проверяйте наличие предупреждений о конфигурации
  • Отслеживайте объем собираемых данных аудита
  • Периодически пересматривайте настройки в соответствии с изменениями в БД