LDAP 密码重置不遵循 pwdhistory 属性



I'm using Java - Apache Directory Client API 用于使用 ldapConnectionTemplate 访问 Apache DS Ldap Server。

我正在尝试实现一项允许用户重置/更改密码的功能。我的密码策略的密码历史记录属性值为 5。因此,用户将无法使用前5个密码中的任何一个。

当我使用 modifyPassword 方法更改密码(即通过传递当前和新密码作为用户(时,它遵循密码历史记录策略。 即我不允许使用前 5 个密码中的任何一个并按预期获得密码异常。但是当使用重置选项(即 - 仅新密码(时,它不遵守密码策略。它接受任何值(包括当前值(并更新密码。

如何使重置密码方案遵循密码历史记录策略?欢迎任何想法,建议和解决方案。

我不相信你想要的行为在任何地方都有指定。

您所说的"重置"的想法是管理员将其设置为已知内容,告诉用户它是什么,并且pwdReset属性设置为 TRUE,以便用户在下次登录时被迫立即更改它 - 您必须通过使用 PasswordPolicy 请求控件并检查任何PasswordPolicyResponse来强制执行CHANGE_AFTER_RESET

管理员应该受到pwdHistory的约束没有特别的原因,无论如何,用户都将被迫再次更改密码,此时他受到pwdHistory的约束。

最新更新