我在Debian 7.1上有一个OpenLDAP设置,(OpenLDAP 2.4.31),我正在尝试设置overlayof成员.我的配置就像我在整个互联网上的许多网站上阅读过,但它仍然不适合我.
问题是实体的memberOf属性仅在我创建组时更新,但在修改或删除组时不会更新.实际上这个问题曾经在此之前被问过:How do I configure Reverse Group Membership Maintenance on an openldap server? (memberOf),但即使经过检查已经回答,我也无法在答案中找到任何有用的信息. (根据评论,即使原始海报也无法对答案做任何事情……)
我的配置是这样的: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=y
我运行的查询:
$ldapsearch -LLL -h localhost -x -D cn=admin,dc=y -b u=users,dc=y -W '(memberOf=cn=test,dc=y)' memberOf
所以问题不在于如何查询属性,而是在修改或删除组后,搜索结果不会改变…
更新:至于Brian的回答,我还设置了refint overlay,使用以下配置:
$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,cn=config objectClass: olcConfig objectClass: olcOverlayConfig objectClass: olcRefintConfig objectClass: top olcOverlay: {1}refint olcRefintAttribute: memberof member manager owner
但它既没有固定叠加成员,也没有固定成功.当我修改组成员的名称时,组的成员属性未更新.这两个问题可以相关吗?
听起来您可能需要配置refint overlay,这有助于在您描述的情况下维护目录的引用完整性.在
http://www.zarafa.com/wiki/index.php/OpenLDAP_referential_integrity有一个页面可能有助于设置此叠加层.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。