Я просто столкнулся с этой проблемой и решил ее иначе, чем выше. Я настраиваю новый LDAP на CentOS 6.4 (для возможного развертывания на RHEL 6.4), и по умолчанию используется схема конфигурации «(cn=config)», поэтому все приведенные выше (без сомнения отличные) инструкции по изменению slapd.conf не применяются. не применяется.
В способе "(cn=config)" (также называемом "slapd.d" на некоторых веб-сайтах) есть много шагов, чтобы заставить оверлеи работать. LDAP CentOS 6.4 по умолчанию, с которым я имел дело, включал схему ppolicy, но она не была активирована.
Чтобы его запустить, было много шагов:
Во-первых, модуль «ppolicy» является динамическим, вы должны убедиться, что он включен в список модулей времени выполнения. В установке CentOS по умолчанию их не было, поэтому мне сначала пришлось включить модули, а затем добавить в список ppolicy. Этот LDIF делает это:
dn: cn=Module{0},cn=config
objectClass: olcModuleList
cn: Module{0}
olcModuleLoad: ppolicy
Если позже вы захотите добавить дополнительные модули, просто добавьте дополнительные записи olcModuleLoad к этому dn.
Во-вторых, вы должны включить наложение для баз данных, к которым вы хотите его применить. Создайте еще один DN, таким образом:
dn: olcOverlay=ppolicy,olcDatabase={2}bdb,cn=config
objectClass: olcPPolicyConfig
olcOverlay: ppolicy
Эти первые два шага выполняются в домене «cn=config», то есть вне базы данных, пользователем root на машине. Последующие шаги находятся в области «dc=example,dc=com», поэтому их можно выполнить с помощью rootDN.
Третий шаг — создать контейнер для политик паролей. Это может быть необязательно, я не уверен - я создал dn, например:
dn: ou=pwpolicies,dc=example,dc=com
objectClass: organizationalUnit
objectClass: top
ou: pwpolicies
В-четвертых, создайте свою реальную политику — у людей, которые столкнулись с этой ошибкой, уже есть это, это dn с «pwdAttribute», который получает синтаксическую ошибку. При правильном выполнении вышеуказанного оверлея и модуля вы можете использовать pwdAttribute: userPassword" без получения синтаксической ошибки. Моя политика, конечно, находилась внутри контейнера ou, и я использовал объектный класс "device" в дополнение к "pwdPolicy", как было предложено в другом месте.
Наконец, вы, конечно, можете использовать политику.
Весь этот процесс стал для меня еще более запутанным, потому что большая часть документации посвящена настройке slapd.conf. Я собрал большую часть этого из книги Zytrax «LDAP для ученых-ракетчиков», которая очень хорошо описывает модуль и наложение, но имеет неправильный или устаревший пример (отсутствует класс структурных объектов) в разделе политики паролей.
person
Andrew Reid
schedule
21.08.2013