OpenLdap密码策略覆盖

我在OpenLDAP 2.4.23中实现了密码策略覆盖。 我也使用check_password.so 。 它为单个用户正常工作,但事情是, cn=admin,dc=example,dc=com可以更改任何用户的密码,而不检查check_password.so。 pipe理员可以设置任何密码。

任何机构都有任何想法,然后分享..这将非常感激。

这是devise,不能改变。

引用slapo-ppolicy(5)

  Note that some of the policies do not take effect when the operation is performed with the rootdn identity; all the operations, when performed with any other identity, may be subjected to constraints, like access control. 

SvenW在他的回答中是正确的,但除此之外还有更多。

在更改密码时对密码进行任何validation或操作的模块通常只能在使用密码修改EXOP时才能使用。 当执行密码修改EXOP(扩展操作)时,明文密码被赋予OpenLDAP,OpenLDAP负责散列/encryption并存储该encryption值。 因此OpenLDAP知道密码的真正含义。
现在,当pipe理员去更改密码时,不用密码修改EXOP,它可能直接设置encryption值。 所以OpenLDAP永远不知道未encryption的密码是什么,因此无法对其执行任何types的检查。