Как настроить маппинг полей в зависимости от сервера LDAP?¶
В разных LDAP серверах сущности пользователя и его поля называются по-разному. Поэтому универсальной настройки нет, настраивается в зависимости от типа подключенного сервера. Примеры настройки:
[ldap]
user = dc=Manager,dc=example,dc=org
password = samplepassword
suffix = dc=example,dc=org
user_tree_dn = ou=Users,dc=example,dc=org
user_objectclass = inetOrgPerson
group_tree_dn = ou=Groups,dc=example,dc=org
group_objectclass = groupOfNames
Поля сущности пользователя и групп сопоставляются отдельно:
[ldap]
user_id_attribute = cn
user_name_attribute = sn
user_mail_attribute = mail
user_pass_attribute = userPassword
user_enabled_attribute = userAccountControl
user_enabled_mask = 2
user_enabled_invert = false
user_enabled_default = 512
user_default_project_id_attribute =
user_additional_attribute_mapping =
group_id_attribute = cn
group_name_attribute = ou
group_member_attribute = member
group_desc_attribute = description
group_additional_attribute_mapping =
Описывать все атрибуты необязательно, достаточно указать лишь необходимые.
Обратите внимание на разницу указание параметров в зависимости от типа сервера:
Windows Server AD:
user_pass_attribute = unicodePwd
OpenLdap и Samba:
user_pass_attribute = userPassword
Также важно учитывать перечень устаревших параметров:
user_allow_create = False
user_allow_update = False
user_allow_delete = False
Указывать данные параметры не нужно.