我一直在尝试 2 天不让 openldap 覆盖的成员工作并给出一些实际结果。我的数据库配置:
database bdb
suffix "dc=example,dc=net"
checkpoint 1024 15
rootdn "cn=root,dc=exmple,dc=net"
rootpw {SSHA}stuffffffff
directory /var/lib/ldap
index objectClass eq,pres
index ou,cn,mail,surname,givenname eq,pres,sub
index uidNumber,gidNumber,loginShell eq,pres
index uid,memberUid eq,pres,sub
index nisMapName,nisMapEntry eq,pres,sub
overlay memberof
然后
slaptest -f /etc/openldap/slapd.conf -F /etc/openldap/slapd.d/
重新启动 slapd 并创建测试用户和测试组。然后ldap搜索看看结果:
[root@sso openldap]# ldapsearch -W -H ldapi:/// "(uid=test123)" -b dc=example,dc=net memberOf
Enter LDAP Password:
SASL/EXTERNAL authentication started
SASL username: gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth
SASL SSF: 0
# extended LDIF
#
# LDAPv3
# base <dc=example,dc=net> with scope subtree
# filter: (uid=test123)
# requesting: memberOf
#
# search result
search: 3
result: 0 Success
# numResponses: 1
并且仍然没有显示 memberof 属性。根据 openldap 文档,它应该就是这么简单 - 将 overlay memberof 添加到 slapd.conf 中,它应该可以工作。任何的想法?谢谢。