パスワード入力フォームのコピペは許可した方が良い

概要

パスワード入力フォームのコピーアンドペーストは、許可した方がセキュリティ的なメリットが大きいと思った話。

背景

以前自分が携わっていたWebサイトでは、ログインフォームにパスワードとパスワードを再度入力させるフォームを用意していた。
これは誤ったパスワードを登録してログインできなくなるのを防ぐために設置したので、コピーアンドペーストはできないようにして手で入力を促す仕組みにしていた。

ただ先日、下記の本を読んでコピーアンドペーストを許可した方が良いと理解を改めたので、記事に残しておく。

フォームの想定

以下のような、ユーザー登録画面などでパスワードを2回入力させるフォームを想定。
「パスワード(確認)」の入力欄がペースト禁止になっている。

なぜコピーアンドペーストを許可した方が良いか

メリット

  • ブラウザやアプリのパスワードマネージャーを使って、堅牢なパスワードを設定してもらいやすくなる。
    • コピペができない場合、入力が簡単なパスワードにあえて変えられる可能性がある。

デメリット

  • パスワードマネージャーを利用せず手入力するユーザーは、想定したパスワードとは異なる状態で登録されるかもしれない。
    • 例:大文字小文字を間違えた状態で入力して、確認欄にペーストするとか
    • パスワードを可視化する機能をつけることで、入力誤りに気づく可能性を上げれる。
    • パスワードリセットの機能があれば、リトライできるので問題にはならない。

まとめ

パスワード入力フォームのコピーアンドペーストは許可した方が良いと思ったという話。
許可した場合のデメリットは、機能を提供することで軽減することができるので、セキュリティ向上を優先したい。