Назад | Перейти на главную страницу

memberof не работает с ldapmodify

У меня есть экземпляр 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:

Наложение уточнения настраивается следующим образом:

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 команда, элемент наложения не срабатывает и ldapsearch команда не возвращает memberof атрибут.

Это предполагаемое поведение? Я думал, что наложение уточнения обработает изменения в группе. Как правильно настроить модули, чтобы они вернули memberof атрибут?

Каждый оверлей должен быть загружен. Попробуй добавить в запись

dn: cn=module{1},cn=config
cn: module{1}

Атрибут:

olcModuleLoad: refint