WEBページに設置したフォームで、ブラウザのオートコンプリート機能を無効化する方法を紹介します。
オートコンプリートとは、ブラウザにIDやパスワードの情報を保存することができる機能のことです。WEBサービスなどでIDやパスワードを入力すると、よく以下のような画面が出てきますね。これがオートコンプリート機能です。
オートコンプリートはブラウザの機能ですが、WEBページに設置したフォーム側で制御することが可能です。フォーム側でオートコンプリートを無効化するための記述方法を紹介したいと思います。
WEBページに設置したフォームのオートコンプリート機能を無効化する方法
オートコンプリートを無効化するには、サイトに設置したフォームにautocomplete属性を追加します。
form要素で定義
form要素で定義する場合は、以下のように記述します。
<form method="POST" action="form.php" autocomplete="off">
form要素にautocomplete属性を追加することで、そのフォーム全体でオートコンプリートを無効化することができます。
input要素で定義
input要素で定義する場合は、以下のように記述します。
<input type="password" name="password" autocomplete="off">
このように、部分的に定義することも可能です。
あとがき
簡単にできる対策ですね。セキュリティの向上にも繋がると思いますので、ログインが必要なWEBサービスを運営している方はぜひ参考にしてください。
なお、オートコンプリートを無効化することで、ユーザーが簡単なパスワードを設定するようになり、逆にセキュリティが低下してしまうという意見もあるみたいです。
よりセキュリティを向上させるには、設定できるパスワードの文字数や組み合わせも考慮する必要がありますね。