本文へ移動

プライバシーと認証情報の扱い

Login Pilotの拡張機能は、HTTP/HTTPSページ内のフォームを監視します。未登録サイトの検出も必要なため、content scriptは対象の全サイトで動作します。保存済み認証情報の取得と自動送信は、利用者が登録したoriginだけで行います。

端末内に保存する情報

キー内容削除のタイミング
registeredOrigins自動ログインを許可したoriginの一覧ポップアップで解除したとき、または拡張機能をアンインストールしたとき
pendingSite直近に検出した未登録originと検出日時対象originを登録したとき、別の候補で置き換わったとき、またはアンインストールしたとき
language表示言語の設定(自動・日本語・英語)別の設定で上書きしたとき、またはアンインストールしたとき

これらはchrome.storage.localに保存し、Chrome Syncによる同期や独自サーバーへの送信は行いません。ブラウザ・OSのバックアップなどによる扱いは、それぞれの設定に従います。フォームの全文、閲覧履歴の一覧、ID、パスワードは保存しません。

認証情報の流れ

  1. 通常の自動入力では、Chromeが対象ページの入力欄に入れた値をcontent scriptが検査します。
  2. クリックなしの取得では、登録済みoriginに対し、Chromeのnavigator.credentials.get({ password: true, mediation })を呼び出します。返されたID・パスワードはcontent script内で一時的に扱い、ページのフォームに入力します。
  3. バックグラウンドへのメッセージにはoriginと操作情報を渡します。認証情報は渡しません。
  4. 自動送信すると、フォームの値はサイト自身のフォーム処理・送信先に渡ります。送信先をLogin Pilotのサーバーへ変更する処理はありません。

未登録サイト、iframe、新規パスワード欄を持つフォーム、複数のパスワード欄があるフォームでは、保存済み認証情報による自動ログインを行いません。手入力を開始したフォームも自動送信しません。フォームを識別するために既存のautocompleteがない入力欄へヒントを追加する場合があります。

拡張機能の「保存しない」は、認証情報を読み取らないという意味ではありません。認証情報は入力・送信のために一時的に扱います。ログインの送信先、ページの安全性、Googleパスワードマネージャーの保存・同期設定は、対象サイトとChromeの設定も確認してください。

外部サービス

拡張機能には、独自サーバーへの通信、解析、広告、追跡コードはありません。GitHubとChromeウェブストアからの配布・更新は、それぞれのサービスを利用します。

紹介LPはCloudflareで配信し、Google FontsのCSSとフォントを読み込みます。LPを開いたときのIPアドレスなどのリクエスト情報は、CloudflareおよびGoogleのサービスで処理されます。このフォント通信は拡張機能からは行いません。

LPで選んだ言語は、LPのlocalStorageにloginpilot.lp.languageとして保存します。拡張機能の言語設定とは別で、ブラウザのサイトデータを消去すると削除されます。支援リンクを開いた場合は、Buy Me a Coffeeのサービスを利用します。

問い合わせ・脆弱性報告はSECURITY.mdを参照してください。