web-dev-qa-db-ja.com

ブラウザにパスワードを記憶させる方法

すべての(またはほとんどの)ブラウザーで「パスワードを記憶する」をトリガーするために必要なログインフォームのプロパティは何ですか?

Background:長年、Operaを使用しており、ログインフォームのように見えるものはほとんどこの機能をトリガーするというルールがありました。今、私は他のブラウザを調査していますが、驚くことに、私が最も頻繁にアクセスするログインフォームの1つであるRoundcubeログインページは、ChromiumでもFirefoxでもこの機能をトリガーしません(RCのさまざまなバージョンとページ設定を試しました)。

それは私のVPSにあるので、それを修正し、最終的にはRC開発チームに送ることもできますが、これは何度も解決されたに違いないと思います。

更新:私のオリジナル 問題は解決されました 。動作しなかった理由は、関連する入力フィールドのautocomplete=offプロパティでした。これはRC設定によって管理され、不機嫌なOperaによって無視されます。 (それは私の、何らかの形でより一般的な質問への答えを提供しません。)


繰り返しになりますが、ブラウザ開発者の間でwhenこの機能をトリガーする必要があるという意見はありますか? Webマスターがブラウザに「これはログインページです」と伝えるベストプラクティスはありますか?または、すべてのブラウザーが独自のヒューリスティックを使用していますか?

5
Alois Mahdal

すべてのブラウザは、パスワードを保存するタイミングを知るためにヒューリスティックを使用します。私はFirefoxとChromeに精通しています。彼らが使用するヒューリスティックは次のようです:

  • フォームにはパスワードフィールドが必要です
  • パスワードフィールドの直前のテキスト入力は、ユーザー名であると想定されます
  • これらの2つの入力フィールドのみが保存されます。

Firefoxは、フォームに2つのパスワードフィールドを入力すると、変更したパスワードを記憶できることを確認するプロンプトを表示します。

以下は、これらのアルゴリズムを破るのによく見られるもののリストです。

  • autocomplete=offを使用するサイト(具体的には、ブラウザーがパスワードを記憶しないように要求する)
  • ログインを複数のページに分け、1つのページにユーザー名を入力し、次のページにパスワードを入力します。
  • Javascriptを使用してこれらのフィールドの内容を非表示フォームの非表示フィールドにコピーし、表示フォームではなく非表示フォームを送信する
  • など、3つ以上のフィールドに入力する必要があります
    • ユーザー名、SSN、およびパスワード
    • ユーザー名、パスワード、およびPIN
  • ユーザー名とパスワードのフィールドの名前を定期的に変更します(パスワードが記憶されていても、firefoxはパスワードを入力できなくなります)。

これらの項目の一部は、パスワードの保存を無効にするために意図的にウェブマスターによって行われます。

5