C2. Аутентификация при использовании LDAP |
Настройки приводятся в файле конфигурации auth-ldap.xml. Основные теги конфигурационного файла: •<enabled/> и <order/> – аналогично варианту для Active Directory. •<server/> задает адрес LDAP-сервера. •<user-dn/> определяет правила трансляции имен в DN с использованием DOS-подобных масок. В теге <user-dn/> допускается использование символов подстановки: ▫* заменяет последовательность любых символов кроме . , = @ \ и пробелов; ▫# заменяет последовательность любых символов. •<user-dn-expr/> определяет правила трансляции имен в DN с использованием регулярных выражений. Например, одно и то же правило в разных вариантах:
\1 .. \9 определяют место подстановки в шаблоне значений *, # или выражений в скобках. Исходя из данного принципа: если указано имя пользователя в виде login@example.com, то после трансляции получится DN: "CN=login,DC=example,DC=com". •<user-dn-extension-enabled/> разрешает выполнение Lua-скрипта ldap_user_dn_translate.ds (из каталога extensions) для выполнения трансляции имени пользователя в DN. Данный скрипт выполняется после попыток применения всех правил user-dn, user-dn-expr в случае, если не найдено ни одно подходящее правило. У скрипта один параметр – введенное имя пользователя. Скрипт возвращает строку, содержащую либо DN, либо ничего. В случае, если не подошло ни одно правило, и скрипт не разрешен или не вернул ничего, то введенное имя пользователя используется как есть. •Атрибут LDAP-объекта для DN, полученного в результате трансляции, и его возможные значения могут быть переопределены следующим тэгом (указаны значения по умолчанию):
В качестве значений параметров true-value/false-value задаются регулярные выражения. •Если остались неопределенные значения атрибута администратора, то в случае задания в конфигурационном файле тэга <group-reference-attribute-name value="memberOf"/>, значение атрибута memberOf рассматривается как список DN групп, в которые входит данный администратор, и поиск нужных атрибутов по этим группам ведется также, как в случае с использованием Active Directory. |