web-dev-qa-db-ja.com

ユーザー設定でパスワードを変更する。最良の方法

ユーザーがユーザー設定(名前、電子メールなど)とともにパスワードを変更するための「最善の」方法を考えています

私はこのようなフォームを持っています:

Name: [text input]
E-mailaddress: [text input]
Change password: [checkbox]
    When checked show:
    New password: [text input]
    Repeat password: [text input]

[Submit]

さて、これは非常に良いアプローチとは思えません。ユーザーがパスワードを変更できるようにするには、チェックボックスをクリックする必要があります。

パスワードとリピートパスワードのフィールドを表示するだけで、それらをオプションにする方が良いと思います。

User settings
Name: [text input]
E-mailaddress: [text input]

Change password (Only if you want to change your password)
New password: [text input]
Repeat password: [text input]

[Submit]

最善のアプローチは何だと思いますか?

4
SlaKrop

これがどのようなサイトの目的かはわかりませんが、ユーザーが古いパスワードを知っているかどうか、またユーザーが電子メールの確認を行わないかどうかを常に確認する必要があります。これにより、アカウント領域がより安全になり、ユーザーがハッカーや自分のミスのためにアカウントを永久に失う可能性が低くなります。たとえば、フォームを次のように編集するとします。

Name: [text]
E-Mail: [text]

Change Password (Only if you want to change your password)
Current Password: [input text] (forgot password?) ---> this would send a link to their e-mail helping them reset password.
New Password: [input text]
Confirm Password [input text]
1
Nick_M