バウンス トラッキング対策をテストする

Ben Kelly
Ben Kelly
Anusmita Ray
Anusmita Ray

ウェブ上のプライバシーを強化する取り組みの一環として、Chrome チームはユーザーのクロスサイト トラッキングを防止するよう積極的に取り組んでいます。今年中に、バウンス トラッキングと呼ばれる特定の技術によるトラッキングを制限する対策をリリースする予定です。

これらの変更によってトラッキング以外のサイトに悪影響が及ぶことはほとんどないと考えられますが、デベロッパーの皆様には、機能フラグを使用してこの新機能をテストし、フィードバックをお寄せいただくことをおすすめします。

バウンス トラッキングとは

バウンス トラッキングは、サードパーティ Cookie がブロックされている場合でも、サードパーティ サイトが Cookie を保存できるようにする手法です。ページに含まれるサードパーティのトラッキング コードは、ユーザーをトラッカーのサイトにリダイレクトするために使用されることがあります。このサイトで Cookie が設定され、元のページに戻ります。このリダイレクトは非常に高速で行われるため、ユーザーが気付かないこともあります。

バウンス トラッキングは、「バウンスバック」または「バウンススルー」として行うことができます。

site1.example が tracker.example にリダイレクトされ、Cookie がアクセスされた後、元のサイトにリダイレクトされるバウンスバックの例を示します。

バウンス バック トラッキング。

site1.example が tracking.example にリダイレクトされ、Cookie がアクセスされてから site2.example にリダイレクトされるバウンス スルーの例を示します。

バウンス スルー トラッキング。

どちらの場合も、ユーザーは tracker.example にアクセスしたことに気づいていない可能性があります。ユーザーは site1.example にアクセスしただけ、または site2.example に移動しようとしただけだと考えている可能性があります。

Chrome で予定されている変更内容

Chrome は、これらのトラッキング サイトの状態を定期的に削除することで、バウンス トラッキングからユーザーを保護する予定です。このプロセスは次のように動作します。

  1. Chrome はナビゲーションをモニタリングし、「ステートフル バウンス」の一部であるサイトに内部的にフラグを設定します。これは、サイト経由でリダイレクトされた Navigation であり、リダイレクト中にサイトが状態にアクセスしたことを意味します。これには、サーバーによって開始されるリダイレクトと、JavaScript によってプログラムでナビゲーションがトリガーされるクライアントサイドのリダイレクトの両方が含まれます。状態へのアクセスには、Cookie と他のタイプのストレージ(localStorage、indexedDB など)の両方が含まれます。
  2. Chrome は、フラグが設定されたサイトのリストを定期的に確認し、過去 45 日間にユーザーがサイトを積極的に使用したかどうか(サイトを操作したかどうか)をチェックします。このインタラクションは、バウンスが検出される前、検出中、検出後に発生する可能性があります。
  3. サイトにユーザー インタラクションがなく、サードパーティの Cookie がブロックされている場合、サイトの状態は削除されます。

これらの変更は、2023 年第 3 四半期の早い時期に、サードパーティ Cookie のブロックを有効にしているユーザーにリリースされる予定です。

この変更により、他のリダイレクト フローが中断されることはありますか?

ユーザー インタラクション チェックは、リダイレクト フローも使用しているトラッキング以外のサイトが削除されないようにすることを目的としています。たとえば、SSO、フェデレーション認証、支払いフローでは、このようなインタラクションが頻繁に実行されます。そのため、SSO、フェデレーション認証、支払いフローに影響はないと予想されます。たとえば、ID プロバイダへのログインはユーザー インタラクションとみなされ、削除は行われません。

サイトが影響を受けるかどうかを確認するにはどうすればよいですか?

バウンス トラッキング対策は、Chrome バージョン 115(現在の最新の Canary)の機能フラグでテストできます。

  1. 新しい Chrome プロファイルを作成します。ウェブ開発に使用した既存のプロファイルには、一般的なウェブサイト ユーザーが経験しないようなバウンス サイトでのインタラクションが記録されている可能性があります。
  2. chrome://flags/#bounce-tracking-mitigationsフラグを「削除で無効化」に設定します。
  3. chrome://settings/cookies で [サードパーティの Cookie をブロックする] を選択して、サードパーティの Cookie のブロックを有効にします。
  4. リダイレクトを含むワークフローを実行します。
  5. Chrome DevTools の [問題] タブを開き、「Chrome may soon delete state for intermediate websites in a recent navigation chain」というタイトルのメッセージを探します。
  6. DevTools の [アプリケーション] パネルに移動し、[バックグラウンド サービス] の [バウンス トラッキングの緩和策] をクリックして、[強制実行] を押すことで、バウンス トラッキングの削除チェックを強制的に実行します。または、削除が行われるまで最大 2 時間待つこともできます。
  7. サイトで状態がバウンスされることを想定したワークフローを実行します。

たとえば、ステップ 4 でこのデモページにアクセスして [bounce me] リンクを選択すると、次のような DevTools の問題が表示されます。

bounce-tracking-demo-tracker.glitch.me が削除される可能性があることを示す DevTools の問題のスクリーンショット。

DevTools の問題のスクリーンショット。

次に、ステップ 6 で、DevTools の [アプリケーション] パネルを使用して、削除を強制的に即時実行できます。

バウンス トラッキングの軽減策パネルが選択されたデベロッパー ツールの [アプリケーション] タブのスクリーンショット。このパネルには、強制実行オペレーションが使用され、デモサイトのストレージが削除されたことが示されています。

DevTools のバウンス トラッキング対策パネル。

その後、デモに戻ってバウンスを実行すると、状態がクリアされたため、新しい識別子が生成されます。

企業ユースケース

一部の企業では、ユーザーが SSO サイトに自動的にログインするように管理対象デバイスを使用しています。ユーザーが SSO サイトを操作しないため、Chrome がこのサイトをバウンス トラッカーとして扱う可能性があります。

この問題を軽減するために、企業は Cookie ポリシーを使用して、SSO サイトのサードパーティ Cookie を有効にできます。これにより、そのサイトではバウンス トラッキング対策が有効にならなくなります。

フィードバック

フィードバックは、Chromium バグトラッカーの「プライバシー > ナビゲーション トラッキング」コンポーネントを使用して送信できます。フィードバックは、W3C PrivacyCG のナビゲーション ベースのトラッキング軽減に関する問題として送信することもできます。