水無月ばけらのえび日記

bakera.jp > 水無月ばけらのえび日記 > パスワードがmaxlengthを超えてもユーザーは気づかない

パスワードがmaxlengthを超えてもユーザーは気づかない

2012年11月21日(水曜日)

パスワードがmaxlengthを超えてもユーザーは気づかない

公開: 2013年3月11日11時25分頃

三菱UFJニコスから、「パスワードの入力桁数に関するご案内」というPDF文書が出ています。

「三菱UFJニコス」という名前の通り、複数の会社が合併し、サービスも統合されたわけですね。従来はログインフォームが別々で、パスワードの長さもまちまちだったものを、ひとつのログインフォームに統合……したところ、ログインできなくなる人が現れたという話のようで。

原因は以下のように説明されています。

①リニューアル前のMUFGカード(UFJカード含む)、DCカード、NICOSカードのWEBサービスの(ID登録及び)ログインの際、パスワードは下記「パスワード規定桁数」を超えて入力することができませんでした。

②リニューアル後のNEWS+PLUSログインページでは、弊社のどのブランドWEBサービスにも対応できるよう、パスワード入力欄を拡大し、入力可能桁数の上限を外しております。

なお、パスワード規定桁数以上の桁数入力した場合はエラーとなり、規定エラー回数を超えた場合はパスワードが無効となりますのでご注意ください。

以上、パスワードの入力桁数に関するご案内 より

文章だけでは分かりにくいのですが、図を見ると、従来のログインフォームではパスワード入力欄にmaxlengthが指定されていたようです (たぶん今も)。

ですので、規定を超える桁数のパスワードはそもそも入力できなかったはずです。ユーザーが長いパスワードを入力しようとした場合、長さを超える入力はブラウザによって無視されます。

問題は、後ろが切り捨てられているということがユーザーに分かりにくいということです。たとえば、長いパスワードをペーストして入力した場合、後ろが切り捨てられたことについては特に何も通知されません。パスワード入力欄ですから入力文字もマスクされ、実際に何が入ったのかは分からないわけです。

入力欄の幅が十分にあれば、入力しようとした文字列と表示された (マスクされた) 文字列の長さが違いますから、「なんか短いな」と感じるかもしれません。従来のMUFGのフォームは入力欄の幅に余裕があったため、気づける可能性はあったと思います。しかしDCやNICOSは幅がぎりぎりで、気づくのは難しかったでしょう。

以前はそれでも表面的には問題が起きていなかったのですが、新フォームでmaxlengthの値が増えたため、長いパスワードを使っていた (つもりになっていた) 人は逆に全桁入力できるようになってしまい、ログインできなくなったというわけですね。

これはなかなか考えさせられる問題です。以前は問題が表面化していなかったとはいえ、長いパスワードを使っていたつもりが使えていなかった利用者がいたわけで、これはこれで問題でしょう。今回は統合によるmaxlength値の変化で表面化しましたが、表面化していないケースもかなりあるのではないかと思います。

制作者側にできる対応としては、

という対策が考えられます。

ユーザーが長すぎるパスワードを入れた場合、黙って切り捨てて使うよりも、エラーにする方が望ましいように思います。あえてmaxlengthをつけず、サーバー側で全部受け取ってエラーにするほうが良いのかもしれません。

関連する話題: Web / セキュリティ / ユーザビリティ

最近の日記

関わった本など

インクルーシブHTML+CSS & JavaScript 多様なユーザーニーズに応えるフロントエンドデザインパターンデザイニングWebアクセシビリティ - アクセシブルな設計やコンテンツ制作のアプローチコーディングWebアクセシビリティ - WAI-ARIAで実現するマルチデバイス環境のWebアプリケーション体系的に学ぶ 安全なWebアプリケーションの作り方 脆弱性が生まれる原理と対策の実践ウェブの仕事力が上がる標準ガイドブック 5 WebプログラミングWeb Site Expert #13Dreamweaver プロフェッショナル・スタイル [CS3対応] (Style for professional)友井町バスターズ (富士見ファンタジア文庫)

その他サイト