群組更新後 OpenLDAP memberOf 屬性未更新

群組更新後 OpenLDAP memberOf 屬性未更新

我在 Debian 7.1 (OpenLDAP 2.4.31) 上設定了 OpenLDAP,並且我正在嘗試設定 memberof 覆蓋層。我的配置就像我在互聯網上的許多網站上閱讀的那樣,但是,它仍然對我不起作用。

問題是實體的 memberOf 屬性僅在建立群組時更新,但在修改或刪除群組時不會更新。事實上,同樣的問題曾經在這裡被問過:如何在 openldap 伺服器上設定反向群組成員維護? (成員),但即使檢查為已回答,我也無法在答案中找到任何有用的信息。 (即使是原發文者也無法根據評論對答案做任何事情......)

我的配置是這樣的:cn=config/cn=module{0}.ldif

dn: cn=module{0}
objectClass: olcModuleList
cn: module{0}
olcModulePath: /usr/lib/ldap
olcModuleLoad: {0}back_hdb
olcModuleLoad: {1}memberof
structuralObjectClass: olcModuleList

對於模組:cn=config/olcDatabase={1}hdb/olcOverlay={0}memberof.ldif

dn: olcOverlay={0}memberof
objectClass: olcMemberOf
objectClass: olcOverlayConfig
olcOverlay: {0}memberof
structuralObjectClass: olcMemberOf
olcMemberOfGroupOC: groupOfNames
olcMemberOfMemberAD: member
olcMemberOfMemberOfAD: memberOf
olcMemberOfRefInt: TRUE

我新增的群組:

dn: cn=test,ou=services,dc=x,dc=y
cn: test
objectClass: groupOfNames
objectClass: top
description: test group
member: cn=Almafa Teszt,ou=users,dc=x,dc=y

我執行的查詢:

$ ldapsearch -LLL -h localhost -x -D cn=admin,dc=x,dc=y -b u=users,dc=x,dc=y -W  '(memberOf=cn=test,ou=services,dc=x,dc=y)' memberOf

所以問題不在於如何查詢屬性,而是修改或刪除群組後,搜尋結果沒有改變...

更新:對於 Brian 的回答,我還設定了 refint 覆蓋,配置如下:

$ ldapsearch -LLL -b cn=module{0},cn=config
dn: cn=module{0},cn=config
objectClass: olcModuleList
cn: module{0}
olcModulePath: /usr/lib/ldap
olcModuleLoad: {0}back_hdb
olcModuleLoad: {1}memberof.la
olcModuleLoad: {2}refint

$ ldapsearch -LLL -b olcOverlay={1}refint,olcDatabase={1}hdb,cn=config
dn: olcOverlay={1}refint,olcDatabase={1}hdb,cn=config
objectClass: olcConfig
objectClass: olcOverlayConfig
objectClass: olcRefintConfig
objectClass: top
olcOverlay: {1}refint
olcRefintAttribute: memberof member manager owner

但它既沒有修復覆蓋層的成員,也沒有本身起作用。當我修改群組成員的名稱時,群組的成員屬性沒有更新。這兩個問題可能有關聯嗎?

答案1

聽起來您可能需要配置重新建置覆蓋,這有助於在您所描述的情況下維護目錄的參考完整性。有一個頁面位於http://www.zarafa.com/wiki/index.php/OpenLDAP_referential_integrity這可能有助於設定此覆蓋。

答案2

我們遇到了相同的問題(與您描述的症狀相同)。事實證明,我們在So add(例如)olcRootDN中丟失了。dn: olcDatabase={1}hdb,cn=configolcRootDN: cn=admin,cn=config

相關內容