У меня есть экземпляр openldap с настроенными модулями memberof и refint.
Оверлей memberof настроен следующим образом:
dn: cn=module{1},cn=config
cn: module{1}
objectClass: olcModuleList
olcModuleLoad: memberof
olcModulePath: /usr/lib64/openldap
dn: olcOverlay={1}memberof,olcDatabase={1}bdb,cn=config
objectClass: olcConfig
objectClass: olcMemberOf
objectClass: olcOverlayConfig
objectClass: top
olcOverlay: memberof
olcMemberOfDangling: ignore
olcMemberOfRefInt: TRUE
olcMemberOfGroupOC: customGroup
olcMemberOfMemberAD: member
olcmemberOfMemberOfAD: memberof
#olcMemberof-dangling-error:
#olcMemberof-dn:
Оверлей refint настроен следующим образом:
dn: olcOverlay={1}refint,olcDatabase={1}bdb,cn=config
objectClass: olcConfig
objectClass: olcOverlayConfig
objectClass: olcRefintConfig
objectClass: top
olcOverlay: {1}refint
olcRefintAttribute: memberof member
Я создал пользователя john
и группа objectClass customGroup
. Для моего атрибута groupmembership установлено значение по умолчанию, то есть member
.
Когда я создаю группу с помощью john
, все работает нормально, и моя команда ldapsearch
возвращает атрибут memberof
пользователя john
.
Но когда я создаю пустую группу и затем добавляю john
с помощью команды ldapmodify
, оверлей memberof не срабатывает, а команда ldapsearch
не возвращает атрибут memberof
.
Это предполагаемое поведение? Я думал, что наложение уточнения обработает изменения в группе. Как правильно настроить модули, чтобы они возвращали атрибут memberof
?
Каждый оверлей должен быть загружен. Попробуйте добавить к записи
dn: cn=module{1},cn=config
cn: module{1}
Атрибут:
olcModuleLoad: refint