Page MenuHomePhabricator

When users have no password on their account, guide them through the "reset password" flow in the guise of "set password"

Authored by epriestley on Feb 7 2019, 3:25 AM.



Depends on D20119. Fixes T9512. When you don't have a password on your account, the "Password" panel in Settings is non-obviously useless: you can't provide an old password, so you can't change your password.

The correct remedy is to "Forgot password?" and go through the password reset flow. However, we don't guide you to this and it isn't really self-evident.


  • Guide users to the password reset flow.
  • Make it work when you're already logged in.
  • Skin it as a "set password" flow.

We're still requiring you to prove you own the email associated with your account. This is a pretty weak requirement, but maybe stops attackers who use the computer at the library after you do in some bizarre emergency and forget to log out? It would probably be fine to just let users "set password", this mostly just keeps us from having two different pieces of code responsible for setting passwords.

Test Plan
  • Set password as a logged-in user.
  • Reset password on the normal flow as a logged-out user.

Diff Detail

rP Phabricator
Automatic diff as part of commit; lint not applicable.
Automatic diff as part of commit; unit tests not applicable.

Event Timeline

epriestley created this revision.Feb 7 2019, 3:25 AM
epriestley requested review of this revision.Feb 7 2019, 3:27 AM
amckinley accepted this revision.Feb 7 2019, 8:42 PM
This revision is now accepted and ready to land.Feb 7 2019, 8:42 PM
This revision was automatically updated to reflect the committed changes.