Форум проекта Pro-LDAP.ru

Администрирование OpenLDAP => Конфигурация через cn=config => Тема начата: elms от 08 Август 2018, 12:42:05

Название: Логирование по объектному классу либо каталогу.
Отправлено: elms от 08 Август 2018, 12:42:05
Егор, добрый день.
Подключили модуль accesslog к базе.
Настроили логирование на выполнение определенных операций (добавление, изменение, удаление).
Можно ли настроить, чтобы логирование выполнялось только для определенных объектных классов или каталога?
Например, логирование производится для всей базы dc=testtest, а хотелось бы, чтобы только для объектов с объектным классом objectClass=test, либо для каталога и всех его подкаталогов dc=raz,dc=testtest.
Название: Re: Логирование по объектному классу либо каталогу.
Отправлено: Леонид Юрьев от 08 Август 2018, 14:05:03
Нет, фильтрации по классам объектов не реализована.

Но можете попробовать добавить, примерно вот в это место в коде (https://github.com/leo-yuriev/ReOpenLDAP/blob/21d5c6ff184024f5d86d1e9caf740e0adba8a145/servers/slapd/overlays/accesslog.c#L1997-L2006).
Название: Re: Логирование по объектному классу либо каталогу.
Отправлено: elms от 09 Август 2018, 07:35:07
Всё, нашёл.
По каталогу возможно.
Достаточно отказаться от параметра olcAccessLogOps и использовать параметр olcAccessLogBase
Название: Re: Логирование по объектному классу либо каталогу.
Отправлено: Леонид Юрьев от 09 Август 2018, 09:00:26
Не обратил внимания, что фильтрации по суффиксу вам достаточно (такой функционал конечно есть).

Но отказываться от olcAccessLogOps не обязательно. Точнее говоря olcAccessLogOps olcAccessLogBase действуют параллельно.
Посредством olcAccessLogOps можно задать список операций для всех суффиксов, а посредством olcAccessLogBase добавить операции для конкретных суффиксов.

Когда-то был запрос добавить в ReOpenLDAP возможность выключать accesslog для отдельных суффиксов или глобально по списку операций, т.е. добавить "выключательные" аналоги olcAccessLogOps и olcAccessLogBase.
Но постепенно такая потребность "рассосалась" (сначала было обнаружено что порча данных была из-за репликации, а потом я починил репликацию).