- Text should be “Forgot password?” and not “Forget password”
- Password validation rules applied on signup should also apply during password reset
- Forgot password link should expire after 24 hours.
- It should not be possible for me to reset another user’s password by passing any kind of wrong values in the URL.
- Users must be asked to login again after password reset.
- [Optional] All previously logged in sessions of the user must expire at the time of password reset.
- Setting up the Similar password should not be allowed in the financial/banking systems.
- Requesting a forgotten password link multiple times should block the user's attempts for the next 30 minutes.
- Updating the password from multiple systems at the same time by using the same link should be handled.
- After updating the password, the link should not work to reset the password.
- Forget password link should be sent for verified email/phone number only.
- Password reset links should not be flagged as spam.
- On page and server side validation should be implemented for forgetting and reset password pages.
- After restoring the password site should be navigated to the login page.
- After resetting the password via the forgotten password link, the user should not be able to sign-in to the system with the old password.
- Password reset/forgot history logs should be maintained in database/admin.