世界を動かす技術を、日本語で。

ChromeでGoogleにサインインする

概要

  • Google Chrome のみ「Sign in with Google」バナーが表示されない仕様
  • SafariやFirefoxではバナーが表示されるが、拡張機能で非表示可能
  • Chromeは独自のOne Tapダイアログを表示
  • このダイアログは拡張機能で非表示不可、Chrome設定で無効化可能
  • Googleによる自社ブラウザ優遇の一例

Google Chromeと「Sign in with Google」バナーの非表示

  • 多くのウェブサイト(例: Yelp)で「Sign in with Google」バナー表示

  • Google が「One Tapユーザー体験」として推進

  • StopTheMadness Pro などの拡張機能でSafariやFirefoxではバナー非表示可能

  • Chrome ではそもそもバナー自体が表示されない仕様

    • ChromeのUser-Agentを Safari で偽装するとバナー非表示を再現可能
    • Safariの「開発」メニューからUser Agentを Google Chrome に設定し確認

Chrome独自のOne Tapダイアログ

  • Chrome利用時、Googleアカウントにサインイン済みでYelp等にアクセスすると One Tapダイアログ 表示
  • このダイアログはウェブページ要素ではなく Chrome本体UI の一部
    • StopTheMadness Pro などの拡張機能では非表示不可
    • ダイアログ表示中はChrome拡張機能のポップアップもブロック
    • これは拡張機能側のバグではない

ChromeでOne Tapダイアログを無効化する方法

  • Chromeの設定から One Tapダイアログ の無効化が可能
    • アドレスバーに chrome://settings/content/federatedIdentityApi を入力
    • Block sign-in prompts from identity services」を選択しダイアログ非表示

Googleによる自社ブラウザ優遇問題

  • Chrome のみ「Sign in with Google」バナー非表示という仕様
  • 他ブラウザではユーザー体験が異なる点
  • これは Google による自社ブラウザ優遇の一例
  • 独占禁止法や規制当局が注目すべき事例

Hackerたちの意見

このポップアップ、マジで犯罪だわ。サインインボタンを何回も誤クリックしちゃって、信頼できない第三者に個人情報が送信されるなんて、許せない。

Chromeでは複数のプロファイルを作れるよ。メインのプロファイルでGoogleにサインインしない方がいい。Gmail用のプロファイルだけにしておくべきだね。

つまり、はっきり言うと、問題の個人情報ってあなたの名前とGmailアドレスのことなんだ。ほとんどの人はこれが「信頼」の問題になるとは思ってないよね。このサイトではプライバシーの影響を誇張するのが流行ってるけど(特にある特定のテック企業が関わるとき)、何を守ろうとしてるのか具体的に言うのも大事だよ。隠そうとする理由はあるの?うん、あるよ。(ただし、具体的に言うと、ほとんどは少しは犯罪的だね)。でも、そんなことを気にするなら、Chromeを使う以上の大きな問題があるよ。Metaがあなたのことを(初回のURL読み込みだけで!)もっともっと知ってると思わない?基本的に、「Torを使え」ってアドバイスの方がマシな領域だよ。

確かに問題だと思う。uBlock拡張機能でほとんどブロックできるよ。

ミスクリックを気にしなくて大丈夫だよ。ウェブページが読み込まれた時点で、Googleはすでに訪問を追跡してるから。Google One TapはGoogleのサーバーからのスクリプトタグを使って動いてるんだよね。

Googleアカウントを削除すれば、こんなことは起こらないよ。

もう何年も前からuBlockでこれをブロックしてるよ。

誰もこれがポルノサイトみたいなところで出るのを侵入的だと思わないの?Googleアカウントでサインインする場所の中で…マジで、毎回訪れるたびにほぼ全画面のポップアップをGoogleにやらせるなんて驚いたよ(プライベートタブで訪れるから、毎回新しいセッションになるし)。redditでもイライラするし、こんな第三者に体験を台無しにされるなんて信じられない(しかも彼らはファーストパーティじゃないのに)。もしみんながこれを始めたら、FacebookやGitHubも含めて、4つのバナーをクリックしなきゃならなくなるの?でも、もしかしたらプライバシー拡張機能をインストールしてる人が少ないから、redditはずっとトラッキングできて、一度の拒否を保存できるのかも。ここにいる人で、これがリピーターのユーザー数に影響を与えないって知ってる人いる?

もちろん!だから、モバイルのuBlockフィルターリストにこれを追加したんだ:accounts.google.com/gsi/client

Google One Tapには大きな利点があるよ。ユーザーがめちゃくちゃにあなたの製品にサインアップするようになるんだ。最近、僕が作ってるSaaSウェブアプリに追加したら、新規サインアップが一晩で8倍に増えたよ。アプリの最小限の機能を使うのにアカウントを作る必要はないけど、サインアップすると特典がもらえるし、ユーザーとメールでコミュニケーションも取れるから、双方にとってメリットがあると思う。

ユーザー体験を妨げたり、サイトのホームページを壊したりするけど、ユーザーに持続的なアイデンティティを結びつけるのはサイトにとって非常に価値があるんだ。普通のサインアップフローは摩擦が多いし、もっと多くのユーザーがログインしたりアカウントを作ったりするなら、そのコストは価値があると考えたんじゃないかな。欠点があってもこの機能を使ってる人が多いことを示してるよ。

一人暮らしを何年もしてて、インコgnitoなんて気にしないけど、もし気にするなら、Firefoxでそのための別のコンテナを作ってログインすることもできるよ。バーナーアカウントを作って、Google(少なくともフィリピンからは)そのコンテナに入れた他のアダルトサイト以外は何も見えないからね。

僕は、ポルノサイトにログインしてるアカウントで他のサイトに行くことは絶対にないよ。注:この機能を擁護するつもりはないけど、そんなサイトに行く前に常識を持とうよ!一番嫌なのはモバイルでのポップアップだね。サイトが読み込まれてから(たとえばトリップアドバイザー)0.5秒から2秒後に出てくるから、指の下に現れるとつい受け入れちゃう可能性がある。情報はすぐに共有されるから、取り返しがつかないよ。最悪だね。デスクトップでも嫌だけど、モバイルではコンテンツの上に直接出てくるから、 accidentalに受け入れやすいんだ。確か、Googleアカウント(もしくはGoogle Workspaceだけかも)でこれをオフにできるはず。もちろん、他の理由でも嫌なんだけど。AppleやFirefox、Microsoft、Metaなどの主要なIDプロバイダーもこれを提供できる理由はないよね。でも、もしそうしたら、[Googleでサインイン]、[Appleでサインイン]、[Facebookでサインイン]、[Microsoftでサインイン]、[Firefoxでサインイン]の5つが出てくることになる。つまり、これは進行中の共有地の悲劇みたいだね。ただ、この機能を擁護するなら、簡単にサインアップできて簡単にログインできるのは、もしそれが欲しいなら超便利だよね。プライバシーにもっと焦点を当てたWeb APIがあればいいな(もしかしたらもう存在するかも)。でも、Googleの特定のポップアップは消えてほしいな、禁止されるべきだよ。

彼らの「プライベート」はプライベートじゃないよ。約1ヶ月前にChromeのシークレットウィンドウで健康関連のことを検索したら、その後すぐに普通のウィンドウでAmazonに関連するスポンサー広告が出てきたんだ。

最近、コンテナが変わったみたいで、広告ブロックが効かなくなったのに気づいたよ。でも、イライラするのは、読み込みが遅いことと、サインインボタンがクリックするところにちょうどあることだね。

サイトに訪れるたびにほぼ全画面のポップアップが出るよ 以前、ドキュメントを読む代わりに色々試行錯誤したけど、uBlockにこんな感じのルールを追加できるよ。誰かがもっと良いフィルターをコメントしてくれるといいな笑 ||accounts.google.com/gsi/iframe/select?client_id=* こんなバナーとかクッキーポップアップ、マジでうんざりだよ…ただブラウジングしたいだけなのに。ほんと、どうやって人は生でウェブを楽しめるの?耐えられないよ。いつになったら人々はChrome(ium)から離れるんだろう?

うざいと思う?うん、どのサイトでも関係ないよね。

誰もこれがポルノサイトみたいなところに出てきたらうざいと思わないの?どのサイトでもめっちゃうざいよ。Googleみたいな会社が、あなたから集められる個人情報を全部集めて、オンラインだけじゃなくて生活のあらゆる面をカバーするプロフィールを作ってるってことを思い出させるよね。

Googleのポップアップ、ほんとウザいよね。コンテンツを覆っちゃうし、Googleはこれでウェブサイトにお金払ってるのかな、それともユーザーをただ煩わせてるだけ?それに、最近Googleアカウントを登録する人がいるのか理解できない。毎回やろうとするとQRコードが表示されて、モバイルデバイスでスキャンしなきゃいけないし、今は仮想マシンを設定して、モバイルデバイスに何をするのか調べる時間もない。さらに、Googleアカウントを買うと最終的に電話番号をリンクする必要があって、買ったロシアの番号のほとんどが受け付けられない。だから、他の人がどうやって登録してるのか全然わからない。こんなに障害があるなら、他のところでメールアカウントを登録する方が簡単だよ。

あなたは普通のユーザーっぽくないね。普通の人はすでにGmailを持ってるか、QRコードをスキャンしてサインアップするから。電話番号が必須かどうかは覚えてないけど、普通のユーザーは多分持ってるし、Googleに渡すのも気にしないと思う(パスワードを忘れたときにアカウントにアクセスできなくなるのを避けるためっていうのは、多くの人にとって正当な理由だよね)。それに、悪名高いサイバー活動をしてるテロ支援国家からの番号を提供することはないと思う。Googleアカウントを買うのと同じくらい悪いことだし。

まあ、Androidは世界で一番大きなスマホエコシステムだからね。ほとんどのスマホは、初めて立ち上げるときにGoogleアカウントでサインインするように求めてくるよ。

||accounts.google.com/gsi/*$xhr,script,3pのUBOルールでそれをブロックできるよ。もしくは「annoyances」リストを有効にしてみて。ウザいクッキーのやつも隠してくれるし。noscriptも追加してね。

noscriptも追加してね Noscriptの拡張機能はuBlock Originの拡張機能と一緒に使うと冗長になるよ。 https://github.com/arkenfox/user.js/wiki/4.1-Extensions#-don...

「Googleでサインイン」はウザいけど、chrome://settings/content/federatedIdentityApiでオフにできるよ。Safariでこれをオフにする方法知ってる人いる?特にモバイルSafariで。iOS 18でこのサインインポップアップに気づいたんだ。

すべてのデバイスでこれを止める一般的な方法があればいいね。Pi-holeを使ってDNSで何かできるんじゃないかな?

Safariにはスイッチがないよ。ブログ記事にも書いてあるけど、StopTheMadness ProみたいなSafariの拡張機能を使わないといけないんだ。

これってFedCM APIのことを指してるんじゃないかな。Google以外のプロバイダーとも連携できるけど、まだ他のところは実装してないんだよね。GoogleのOne Tapライブラリは新しいAPIを使おうとしてるけど、FedCMを実装してないブラウザでは従来のOne Tapポップアップに戻るんだ。Chromeの組み込みのやつは「google.comでサインイン」って表示されてるのに、One Tapだと「Googleでサインイン」ってなるのがその例だね。Mozillaも実装に取り組んでるけど、結構複雑なシステムだから時間がかかると思う。Safariも人気が出れば実装するんじゃないかな。

うん、FedCMの会議には参加してるよ。Firefoxには定期的に参加してる開発者が一人いる。Safariチームが「いいアイデアのようだね、実装を検討するよ」って言ってる投稿を見たことがあるけど、それ以降の動きは見てないな。Edgeはサポートしてるし、他のChromiumベースのブラウザも比較的簡単に実装できるはずだよ。

何にフォールバックするのか気になるな。サードパーティのクッキーはもう廃止/ブロックされるべきだし、どうやってgsiスクリプトがGoogleのセッション情報を取得するんだろう?

Chromeの体験は実は新しい標準、Federated Credential Management(略してFedCM)の一部なんだ。ブラウザを介したログイン体験を作って、アイデンティティプロバイダーとウェブアプリが必要な情報を得られるようにするっていう考え方だよ。リクエストをインターネット上で相関させられないようにするんだ。この記事を今書いてるところなんだけど、もっと知りたいなら最近の認証に特化したカンファレンスの動画があるよ(全て開示するけど、うちの会社が主催して、私が司会をやったんだ):https://m.youtube.com/watch?v=FBAD4x7MWdI 彼らは標準の策定に積極的に取り組んでいて、Firefoxもそれにコミットしてる。Edgeはもうサポートしてるし、アイデンティティプロバイダーからのフィードバックを求めてるよ。詳しくはここにあるよ:https://github.com/w3c-fedid/FedCM(毎週火曜日に会議してる)。

ちょっと気になるんだけど、「続行するには、google.comがあなたの名前、メールアドレス、プロフィール写真を共有します」っていうのが「ウェブ上の連邦アイデンティティのための現代的でプライバシーを守る標準」とどうやって両立するの?全然プライバシーを守ってるようには聞こえないんだけど。

それはすごく興味深いけど、ChromeがGoogle以外のアイデンティティプロバイダーの使用を許可する可能性はあるのかな?

デフォルトでメールアドレスの共有をブロックできる?Googleでサインインするたびに、サイトやアプリが無断でスパムを送り始める気がするんだ。だから使わない理由がほぼスパムなんだよね。

理論的には素晴らしいけど、GoogleやFacebookのトラッキングピクセルとはどう整合性があるの?どちらにしても、彼らが大量のトラッキングデータをコントロールしてるみたいだね…

これはMozillaの古いPersonaプロジェクトの後継なの?それとも何か似てるの?

新しいスタンダードなら、何かしらの業界全体のサポートがあるはずだよね? そう思ったのは、https://github.com/w3c-fedid/FedCM/graphs/contributors を見ると、ほとんどがGoogleで働いてる人たちだから。10回以下のコミットの人に当たった時点で諦めたけど…。

彼らはスタンダードに積極的に取り組んでいて、Firefoxもそれにコミットしてるよ。Mozillaのスタンダードの立場は中立って言ってるね: https://mozilla.github.io/standards-positions/#fedcm その件に関するイシュートラッカーを見ると、興味はあるけど詳細についてはたくさんの懸念があるみたいだよ。 > ただし、初期の肯定的な立場に関するいくつかの懸念は解決されていなくて、新たな問題も出てきている。 — https://github.com/mozilla/standards-positions/issues/618 Appleは3年以上前に曖昧な「興味あり」って立場を示したけど、詳細は何もないね: https://github.com/WebKit/standards-positions/issues/309 この立場は変わったのかな?

Chromeの体験は実際、新しいGoogleの非標準の一部なんだ。

これに関連してなんだけど、SSOプロバイダーが自分のアカウントがすでにサービスにログインされてる時に教えてくれたらいいのにな。Googleでサインインしようとした時に、4つのアカウントが出てきて、どれを使ったかを推測しなきゃいけないのが面倒…もしかして、ここで何かセキュリティの詳細を見逃してるのかな。

問題は、その時点ではSSOプロバイダーが管理してるってこと。SSOプロバイダーは、どのアカウントがそのウェブサイトでアクティブかを確実に知ることはできないんだよね。

驚くべきことに、そのポップアップはDOMの一部じゃなくて、ブラウザがページコンテンツの上に注入してるんだよね。ブラウザのツールバーにあったら気にしないけど、ページコンテンツを隠すのは反トラスト訴訟を招くことになるよ。6ヶ月前にChromeをやめてBraveに切り替えたのは、「Googleでサインイン」のポップアップが止まらなかったから。chrome://settings/content/federatedIdentityApiのオプションも、https://myaccount.google.com/のオプションも試したけど、どちらも効果がなかった。結局、ずっと出てきてたんだよね。

反トラスト訴訟を求めてるだけだよ 他のコメントでも言われてるけど、[0] これはオープンスタンダードで、他のアイデンティティプロバイダーも許可されてるんだよ、Googleだけじゃないよ。[0]: https://news.ycombinator.com/item?id=44715875

これがGoogleが呼んでる「ワンタップユーザー体験」だよ。幸運なことに、私のウェブブラウザ拡張「StopTheMadness Pro」は「Googleでサインイン」バナーを隠してくれるんだ。これ、素晴らしいね。著者がこれや他のユーザーに優しくないウェブサイトの行動を「狂気」と分類してるのが好きだよ。Firefoxにも似たようなアドオンはあるのかな?