2017-04-03 39 views
0

我正在使用Java -Apache目錄客戶端API使用ldapConnectionTemplate訪問Apache DS Ldap服務器。LDAP密碼重設不尊重pwdhistory屬性

我正試圖實現一項功能,允許用戶重置/更改密碼。我的密碼策略的密碼歷史記錄屬性值爲5.因此,用戶將無法使用任何先前的5個密碼。

當我使用modifyPassword方法更改密碼(即通過傳遞當前密碼和新密碼作爲用戶)時,它將遵守密碼歷史記錄策略。即我不允許使用以前的5個密碼中的任何一個,並按預期得到密碼異常。但是,當使用重置選項(即 - 只有新密碼)時,它不遵守密碼策略。它接受任何值(包括當前值)並更新密碼。

如何使重置密碼方案遵守密碼歷史記錄策略?任何想法,建議和解決方案是受歡迎的。

回答

0

我不相信你想要的行爲是在任何地方指定的。

在您的意思上,「重置」的概念是管理員將其設置爲已知的內容,告知用戶它是什麼,並且pwdReset屬性設置爲TRUE,以便用戶被迫立即更改它在下次登錄時 - 您必須通過使用PasswordPolicy請求控制並檢查任何PasswordPolicyResponseCHANGE_AFTER_RESET來強制執行。

還有爲什麼管理員應由pwdHistory受到限制沒有特別的理由,反正用戶將被強制反正再次更改密碼,此時他pwdHistory限制。