「IDまたはパスワードが違います」。なぜどっちが違うか、教えてくれないのか?
「IDまたはパスワードが違います」。なぜどちらが違うか教えてくれないのか、その理由を説明できますか?
7:05
メールアドレス(ID)とパスワードのどちらが間違っているか、ハッキリ書いてくれればいいのに……
サイトのログイン画面で入力エラーになった際、こう思ったことはありませんか?
Web担当者やサイト管理者にとっても、ユーザーの利便性(UX)を高めるために「どちらが違うのかを教えてあげたい」と考えたくなるポイントです。
しかし、多くの主要サービスで曖昧なエラー表示が採用されているのには、明確かつ切実なセキュリティ上の理由があります。
理由:アカウントハック(ブルートフォース攻撃など)を防ぐため
もしシステムが「IDは合っていますが、パスワードが違います」と親切に返答してしまうと、悪意のある第三者や攻撃用プログラム(ボット)に大きなヒントを与えることになります。
具体的な危険性として、まずシステム上に存在する有効なIDのリストを攻撃者に簡単に割り出されてしまう点が挙げられます。
さらに、IDが正しいと特定されたアカウントに対して、パスワードのみを集中して総当たりで試行する効率的な攻撃を許すことにもつながります。
「入力された情報のどちら、あるいは両方が間違っているのかを攻撃者に推測させない」こと自体が、ユーザーの個人情報やアカウントを守る重要な防御策(セキュリティ・バイ・デザイン)なのです。
Web担当者が取れる「セキュリティと利便性」の折衷案
セキュリティが必要だと理解しつつも、利便性を落としすぎないためには画面設計や導線の改善工夫が効果的です。
- ①キャプチャ(reCAPTCHAなど)やアカウントロックの導入
連続して入力失敗した際にBot対策の認証を挟んだり、一時的にロックをかけたりして攻撃を防ぐ。
- ②入力支援(見せる/隠す切り替えボタン)の設置
パスワード入力欄に「目のアイコン(伏字解除)」を設置し、ユーザー自身が入力ミス(大文字・小文字、全角半角など)に気付きやすくする。
- ③「パスワードをお忘れの方」への導線を分かりやすく配置
エラーメッセージのすぐ近くに再設定用リンクを配置し、迷ったユーザーがすぐにリセット手続きへ移動できるようにする。
- ④ソーシャルログインやパスキー(Passkey)の導入
そもそもID/パスワードの直接入力を減らす認証方式を採用する。
ユーザー保護のためのセキュリティ仕様であることを理解しつつ、エラー時のフォロー動線を整えることで、離脱を防ぐ使いやすいログイン画面を目指しましょう。
