OpenLDAP覆盖成员仅返回第一个成员

时间:2016-06-08 09:55:03

标签: openldap memberof

我刚刚使用overlay memberOf安装了OpenLdap 2.4.44。我将叠加配置为使用uniquemember和groupOfUniqueNames作为属性

overlay memberof
memberof-group-oc groupOfUniqueNames
memberof-member-ad uniquemember

问题是属性memberOf似乎只应用于组的第一个条目。如果我有一个具有多个uniqueMember的组,则当我通过memberOf进行查询时,只返回第一个。如果我尝试为任何其他条目获取属性memberOf,它将返回空,就像它不属于该组一样。有什么想法吗?

1 个答案:

答案 0 :(得分:0)

嗯,这实际上是一件愚蠢的事,但如果将来有人有同样的问题,我在这里发布了解决方案。这不是OpenLdap的问题,而是数据导入。加载是从现有的LDIF文件完成的。由于某种原因,文件的顺序是这样的:

dn: cn=Employee1, cn=employees, dc=dev, dc=company,dc=com
cn=Employee1
objectClass: organizationalPerson
objectClass: top
objectClass: person
objectClass: inetOrgPerson

dn: cn=Employees,cn=groups,dc=dev, dc=company,dc=com
objectClass: groupOfUniqueNames
uniqueMember: cn=Employee1, cn=employees, dc=dev, dc=company,dc=com
uniqueMember: cn=Employee2, cn=employees, dc=dev, dc=company,dc=com
uniqueMember: cn=Employee3, cn=employees, dc=dev, dc=company,dc=com
cn: Employees

dn: cn=Employee2, cn=employees, dc=dev, dc=company,dc=com
cn=Employee2
objectClass: organizationalPerson
objectClass: top
objectClass: person
objectClass: inetOrgPerson

dn: cn=Employee3, cn=employees, dc=dev, dc=company,dc=com
cn=Employee3
objectClass: organizationalPerson
objectClass: top
objectClass: person
objectClass: inetOrgPerson

因此,只有第一个条目存在于引用所有条目的组之前,并且memberOf适用于该第一个条目,但不适用于稍后导入的条目。