0

我已经按照 OpenLDAP 提到的过程创建了密码策略但是当我通过扩展操作更改用户密码时,我没有观察到它的效果。我得到了响应控制,但它只有警告而不是错误。

所以问题是我身边缺少什么?如何强制执行密码策略以使用扩展操作来重置密码?一旦我定义了密码策略,它是否适用于 OpenLDAP 服务器中的所有现有用户?还是只适用于新用户?

4

1 回答 1

0

您不得将 ManagerDN 帐户用于自己的任何事情。它绕过所有覆盖,让您可以无限访问您不想要的 DIT。

您的应用程序应该以用户身份运行,并且 DIT 中的条目在配置中被赋予了适当的权限。

我为此定义了管理员,所有应用程序和人工管理员都是其中的一部分,这使得配置更简单(并且稍后添加/更改管理员或应用程序简单)。我的slapd.conf语法是这样的:将其转换为slapd.d在线语法留给读者作为练习。请注意,您必须更改基本 DN 等以适合您自己的 DIT,可能还有组类和属性名称。

access to attrs=userPassword
    by dn.exact="cn=Manager,dc=XXX,dc=com" write
    by group/groupOfUniqueNames/uniqueMember="cn=LDAP admins,ou=Groups,dc=XXX,dc=com" write
    by group/groupOfUniqueNames/uniqueMember="cn=Applications,ou=Groups,dc=XXX,dc=com" write
    by anonymous auth
    by self write
    by * none

access to *
    by self write
    by dn="cn=Replicator,dc=XXX,dc=com,c=us" write
    by dn.exact="cn=Manager,dc=XXX,dc=com" write
    by group/groupOfUniqueNames/uniqueMember="cn=LDAP admins,ou=Groups,dc=XXX,dc=com" write
    by group/groupOfUniqueNames/uniqueMember="cn=Applications,ou=Groups,dc=XXX,dc=com" write
    by users read
    by anonymous search
    by * none

请注意,此设置还允许用户更改自己的密码,因此您现在可以在这样做时以用户身份绑定。

于 2015-03-26T00:42:29.200 回答