0

Let me explain my issue.

I have a PHP application using an LDAP connection to an Active Directory server to authenticate. If i make it so that a user needs to change their password at the next login it won't allow me to authenticate them before i allow the password change. I can detect that the password change is required but if i allowed the user to change it then i have no way to work out that the user is valid or not, which means that the system could be hacked by just knowing the username of a user that's password as expired.

This to me seems daft... is there something im missing..

Currently I am

binding to the server

checking if the password as expired or not

checking the authentication users details

This is what I get returned if the users account is set to change password on next login, auth as failed but there is a password change request.

Is there a specific order the requests need to be sent so i can auth the user before the password change it sent?

Thanks in advance

4

1 回答 1

1

通过将帐户标记Must change password at next login为实际上没有密码进行身份验证,因此这不会转化为网络。

更好的选择是将用户的pwdLastSet属性与域策略进行比较,并在应用程序中强制执行更改,而不是在 AD 中。

于 2013-04-10T15:36:20.957 回答