我可以通过使用fedora-idm-console连接ldap服务器和每个用户的管理员用户来更改密码。但每个用户都需要通过使用Web服务器客户端远程连接服务器来更改密码,例如phpldapadmin。但是当用户连接到服务器以更改密码时,他只能看到他的详细信息。
你能帮我吗?答案 0 :(得分:1)
默认情况下,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