8.4.10. Если что-то работает не так, как ожидалосьРассмотрим следующий пример:
access to *
by anonymous auth
access to *
by self write
access to *
by users read
Вам может показаться, что данные правила позволят любому пользователю пройти аутентификацию, прочитать любые записи из каталога и изменить свои данные, если аутентификация пройдена. Однако в этом примере будет работать только аутентификация, а ldapsearch никогда не вернёт данных. Проблема в том, что SLAPD применяет настройки доступа последовательно, строка за строкой, и останавливается на первой совпавшей части правил доступа (в данном случае: to *).
Чтобы получить то, что мы хотели, файл должен выглядеть следующим образом:
access to *
by anonymous auth
by self write
by users read
Основное правило: "сначала определяются более конкретные правила, а в конце - более общие".
Смотрите также slapd.access(5), а для поиска ошибок - loglevel 128 и slapacl(8).