none
Microsoft Edgeのオートフィル機能の仕様について RRS feed

  • 質問

  • Microsoft Edgeのオートフィル機能の仕様について

    表題の件について質問させていただきたく思います。
    ◆環境
    OS: 
      エディション: Windows 10 Pro
      バージョン: 1809
      OSビルド: 17763.253
    ブラウザ:
      Microsoft Edge 44.17763.1.0 (Microsoft EdgeHTML 18.17763)

    ◆質問
    特定のテキストボックス(<input>タグ、type="text")にフォーカスインすると、オートフィルでクレジットカードの情報が表示されるようになりました。
    Edgeのバージョンが44になってからこの動作に気が付きました。ただし、42で起きていなかったか明確に断言はできません。
    対象の端末のログインユーザーはMicrosoftアカウントを使用しており、またそのMicrosoftアカウントにはクレジットカード情報が登録されています。
    Edgeの設定に「パスワード&オートフィル」という項目があり、そこでカードの管理やオートフィルの設定ができることも理解しているため、Edgeがクレジットカードの情報を持っていることに疑問はありません。
    (デフォルトで「Microsoftアカウントからカードを使用する」がオンになっているのはどうなのかと思わないでもないですが・・・)

    不明なのは、このクレジットカード情報のオートフィルが適用されるテキストボックスの条件です。
    すべてのテキストボックスでこのオートフィルが適用されるわけではないようですが、私が動かした限りでは<input>タグのId属性、またはName属性の値が"Name"だとこのオートフィルが適用されているように見えます。
    この条件は正しいでしょうか、あるいは追加条件がありますでしょうか。
    またはまったく別の条件でしょうか。

    私が調べた限りでは見当たらなかったのですが、この辺りの仕様を明言している文献がありましたら申し訳ございません。


    何卒よろしくお願いいたします。
    2019年1月24日 3:04

回答

  • いろいろ調べてみましたが(と言っても、ググってヒットした記事を読んだだけですが)、

    > Edge の機能で「パスワード&オートフィル」の「カードを保全」にクレジットカードを登録したとき、input 要素に入力する際それが表示される条件は何か

    は分かりませんでした。お役に立てずすみませんが、他の方の回答をお待ちください。

    ・・・というだけでは何ですので、調べて分かったことを書いておきます。参考になれば幸いです。

    まず、Edge を開いて、Edge 上での設定だけでカード情報を登録して(もちろん有効なクレジットカード情報です)試してみましたが、前のレスで、

    > 自分の環境 Windows 10 Pro 64-bit バージョン 1809 の Microsoft Edge 44.17763.1.0 で試してみましたが、上記の条件では表示されませんでした。

    と書いたとおり、https://elleneast.com/?p=3123 のような画像は表示されません。

    上記の条件というのは input 要素で type="text" id="Name" name="Name" です。下の画像を見てください。

    上記ソースを Edge に表示し、テキストボックスに入力したあと submit し、再度のこのページを表示してテキストボックスにフォーカスを当てると、以下の画像のようになりますが、これはオートコンプリート機能(Edge で言うとフォームデータのオートフィル)のようです。(Edge のカード情報を削除しても出てくるので)

    ググってヒットした以下の記事によると、Microsoft Account で登録したクレジットカード情報と Edge のカード情報とが同期を取るようです。

    Add, Remove, Manage Credit Cards in Microsoft Edge on Windows 10
    https://www.thewindowsclub.com/add-remove-manage-credit-cards-in-microsoft-edge

    試しに追加してみましたが、

    Edge に反映されてました。

    質問者さんのレスにあった、

    > 対象の端末のログインユーザーはMicrosoftアカウントを使用しており、またそのMicrosoftアカウントにはクレジットカード情報が登録されています。

    > 発生環境では過去一度もクレジットカード情報を入力したことがありません。

    はそういうことだったと思われます。

    この状態なら https://elleneast.com/?p=3123 のような画像は表示されるのかと思いましたが、そういうことはなくて、試した結果は上と同様オートコンプリート機能が働くのみでした。

    という訳で、ここでギブアップです。

    Microsoft のサイトでクレジットカードを使って買い物をするとかすれば表示されるのかもしれませんが、とてもそこまではできません・・・


    客に説明しなければならないとか業務上クリティカルな話で Microsoft からの正式な回答が必要ということであれば、マイクロソフトの有償サポートをご利用頂くことを検討ください。

    フォーラムでご質問頂くにあたっての注意点
    https://social.msdn.microsoft.com/Forums/ja-JP/ca9ecfb7-4407-4fcb-b8bd-207d68257e68

    • 回答としてマーク p1nk5p1der 2019年5月14日 3:11
    2019年1月25日 5:41

すべての返信

  • オートコンプリート機能のことでしょうか? であれば、

    > 私が動かした限りでは<input>タグのId属性、またはName属性の値が"Name"だとこのオートフィルが適用されているように見えます。この条件は正しいでしょうか、あるいは追加条件がありますでしょうか。

    ・・・は違うと思います。

    オートコンプリートは、「既定では、ウェブサイト上の <input> 欄を通じてユーザーが送信した情報はブラウザーによって記憶されます」ということで、無効にするには対応が必要です。

    フォームの自動補完を無効にするには
    https://developer.mozilla.org/ja/docs/Web/Security/Securing_your_site/Turning_off_form_autocompletion

    質問者さんが見ているサイトの html ソースの設定はどうなっているでしょうか?

    他に、Web サーバー側と連携してオートコンプリートを実現することも可能です。具体例は、ASP.NET Ajax Control Toolkit の場合ですが、以下のデモのものがあります。

    AutoComplete Demonstration
    https://ajaxcontroltoolkit.devexpress.com/AutoComplete/AutoComplete.aspx

    こういうものですと上に紹介した記事「フォームの自動補完を無効にするには」の手段では対応できないですが。

    2019年1月24日 3:42
  • SurferOnWwwさん、返信いただきありがとうございます。

    実際に表示される画面キャプチャを貼りたいところなのですが、私のフォーラム上での実績が足りないため画像を貼ることができません。
    以下のサイトの画像を参照いただければと思います。
    https://elleneast.com/?p=3123

    諸々説明不足で申し訳ございません。
    発生環境では過去一度もクレジットカード情報を入力したことがありません。
    よって、SurferOnWwwさんが仰った
    > オートコンプリートは、「既定では、ウェブサイト上の <input> 欄を通じてユーザーが送信した情報はブラウザーによって記憶されます」ということで、無効にするには対応が必要です。
    とは異なるように感じています。

    > 質問者さんが見ているサイトの html ソースの設定はどうなっているでしょうか?
    こちらについては開発者ツールで確認しましたが、オートコンプリートを無効にしている様子はありませんでした。

    > 他に、Web サーバー側と連携してオートコンプリートを実現することも可能です。具体例は、ASP.NET Ajax Control Toolkit の場合ですが、以下のデモのものがあります。
    >
    > AutoComplete Demonstration
    > https://ajaxcontroltoolkit.devexpress.com/AutoComplete/AutoComplete.aspx
    こちらについては実装を確認することが難しいですが、少なくともクレジットカード情報を管理するシステムではない、クレジットカード情報を入力したことがない、ということから可能性は低いと考えます。
    2019年1月24日 5:38
  • > 以下のサイトの画像を参照いただければと思います。
    > https://elleneast.com/?p=3123

    失礼しました。オートコンプリート機能と勘違いしてました。

    Edge の機能で「パスワード&オートフィル」の「カードを保全」にクレジットカードを登録したとき、input 要素に入力する際それが表示される条件は何かと言うのが質問と理解しました。

    > 私が動かした限りでは<input>タグのId属性、またはName属性の値が"Name"だとこのオートフィルが適用されているように見えます。

    自分の環境 Windows 10 Pro 64-bit バージョン 1809 の Microsoft Edge 44.17763.1.0 で試してみましたが、上記の条件では表示されませんでした。

    では、何が条件かと言われると分かりません。調べてみます。
    2019年1月24日 7:19
  • Edge の機能で「パスワード&オートフィル」の「カードを保全」にクレジットカードを登録したとき、input 要素に入力する際それが表示される条件は何かと言うのが質問と理解しました。

    まさにご理解の通りです。説明が足りず申し訳ございません。

    自分の環境 Windows 10 Pro 64-bit バージョン 1809 の Microsoft Edge 44.17763.1.0 で試してみましたが、上記の条件では表示されませんでした。
    >
    > では、何が条件かと言われると分かりません。調べてみます。

    お手数ですがよろしくお願いいたします。

    2019年1月25日 2:33
  • いろいろ調べてみましたが(と言っても、ググってヒットした記事を読んだだけですが)、

    > Edge の機能で「パスワード&オートフィル」の「カードを保全」にクレジットカードを登録したとき、input 要素に入力する際それが表示される条件は何か

    は分かりませんでした。お役に立てずすみませんが、他の方の回答をお待ちください。

    ・・・というだけでは何ですので、調べて分かったことを書いておきます。参考になれば幸いです。

    まず、Edge を開いて、Edge 上での設定だけでカード情報を登録して(もちろん有効なクレジットカード情報です)試してみましたが、前のレスで、

    > 自分の環境 Windows 10 Pro 64-bit バージョン 1809 の Microsoft Edge 44.17763.1.0 で試してみましたが、上記の条件では表示されませんでした。

    と書いたとおり、https://elleneast.com/?p=3123 のような画像は表示されません。

    上記の条件というのは input 要素で type="text" id="Name" name="Name" です。下の画像を見てください。

    上記ソースを Edge に表示し、テキストボックスに入力したあと submit し、再度のこのページを表示してテキストボックスにフォーカスを当てると、以下の画像のようになりますが、これはオートコンプリート機能(Edge で言うとフォームデータのオートフィル)のようです。(Edge のカード情報を削除しても出てくるので)

    ググってヒットした以下の記事によると、Microsoft Account で登録したクレジットカード情報と Edge のカード情報とが同期を取るようです。

    Add, Remove, Manage Credit Cards in Microsoft Edge on Windows 10
    https://www.thewindowsclub.com/add-remove-manage-credit-cards-in-microsoft-edge

    試しに追加してみましたが、

    Edge に反映されてました。

    質問者さんのレスにあった、

    > 対象の端末のログインユーザーはMicrosoftアカウントを使用しており、またそのMicrosoftアカウントにはクレジットカード情報が登録されています。

    > 発生環境では過去一度もクレジットカード情報を入力したことがありません。

    はそういうことだったと思われます。

    この状態なら https://elleneast.com/?p=3123 のような画像は表示されるのかと思いましたが、そういうことはなくて、試した結果は上と同様オートコンプリート機能が働くのみでした。

    という訳で、ここでギブアップです。

    Microsoft のサイトでクレジットカードを使って買い物をするとかすれば表示されるのかもしれませんが、とてもそこまではできません・・・


    客に説明しなければならないとか業務上クリティカルな話で Microsoft からの正式な回答が必要ということであれば、マイクロソフトの有償サポートをご利用頂くことを検討ください。

    フォーラムでご質問頂くにあたっての注意点
    https://social.msdn.microsoft.com/Forums/ja-JP/ca9ecfb7-4407-4fcb-b8bd-207d68257e68

    • 回答としてマーク p1nk5p1der 2019年5月14日 3:11
    2019年1月25日 5:41
  • SurferOnWwwさん、詳細な調査結果、ありがとうございます。

    貼り付けていただいたaspxを真似てみましたが、やはり私の方でもオートコンプリート機能しか発生しませんでした。

    > Microsoft のサイトでクレジットカードを使って買い物をするとかすれば表示されるのかもしれませんが、とてもそこまではできません・・・
    私が使用しているMicrosoftアカウントは登録されたクレジットカードでMicrosoftサブスクリプションを購入しているためその可能性はあるかもしれませんが、切り分けが難しいですね・・・

    私が事象を確認した環境で、事象が発生するinputは以下の通りです。
    <input class="input-block-level" type="text" id="Name" name="Name" value required autofocus>
    required属性が関係しているかと思い試してみましたが、オートコンプリート機能しか発生しませんでした。
    classで指定している"input-block-level"は、事象が発生しない他の<input>タグでも使用しているため関係ないと考えておりましたが、条件が複合的ならcssを追う必要がありそうです。(難読化されているため時間を要しそうです・・・)

    特に顧客から報告があったり説明を求められているわけではないのですが、もし問い合わせがあった際に回答できるよう情報は持っておきたいと思った次第です。
    2019年1月28日 2:44
  • この件に関して残念ながら結論は得られなかったため、SurferOnWwwさんの調査結果を回答としてクローズします。

    SurferOnWwwさん、ありがとうございました。

    2019年5月14日 3:11