我可以通过使用Fedora IDM控制台将LDAP服务器与每个用户的管理员用户连接来更改密码,但每个用户都需要通过使用像phpldapadmin这样的Web服务器客户端远程连接服务器来更改密码。但当用户连接到服务器以更改密码时,他只能看到自己的详细信息。
你能帮帮我吗?
最佳答案
默认情况下,LDAP用户在数据库中没有任何权限,甚至无法读取和验证它。如果希望每个用户都能更改其密码,则必须在slapd.conf(或slapd.d)中允许此操作。以下是我的配置,允许更改自己的密码和一些个人属性:
access to attrs=userPassword
by dn="uid=root,dc=domain,dc=tld" write
by group/groupOfNames/member.exact="cn=ldapadmins,dc=domain,dc=tld" write
by self write
by anonymous auth
by * none
access to attrs=
mail,
sn,
givenName,
telephoneNumber,
mobile,
facsimileTelephoneNumber,
street,
postalAddress,
postOfficeBox,
postalCode,
roomNumber,
shadowLastChange,
ldapPublicKey,
sshPublicKey,
sambaLMPassword,
sambaNTPassword,
sambaPwdLastSet
by dn.base="uid=root,dc=domain,dc=tld" write
by group/groupOfNames/member.exact="cn=ldapadmins,dc=domain,dc=tld" write
by self write
by * read
access to *
by dn="uid=root,dc=domain,dc=tld" write
by group/groupOfNames/member.exact="cn=ldapadmins,dc=domain,dc=tld" write
by * read
关于linux - 从基于Web的客户端更改ldap用户密码,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13289596/