サードパーティ Cookie のブロックをデバッグする

特定のウェブサイトの個々の Chrome クライアントでサードパーティ Cookie が許可またはブロックされるかどうかは、さまざまな機能によって変わる可能性があります。

この記事では、Chrome の各機能がどのように相互作用するかについて説明します。また、サードパーティ Cookie が使用可能またはブロックされる理由を把握するためのツールと手法について説明します。

サードパーティ Cookie が許可またはブロックされる原因

このセクションでは、すべてのサイト、個々のサイト、または個々のユーザーについて、サードパーティ Cookie を許可またはブロックする方法について説明します。

ユーザー設定

chrome://settings または Chrome のアドレスバーの目のアイコンから、すべてのサードパーティ Cookie のブロックなど、ブラウザのサードパーティ Cookie のデフォルトの動作を設定または変更できます。ユーザーは、特定のサイトに対してサードパーティ Cookie を許可する例外を追加することもできます。

サードパーティ Cookie ブロック

chrome://settings/cookies

サードパーティ Cookie は [プライバシーとセキュリティ] > [サードパーティ Cookie] でブロックできます。 [すべてのサードパーティ Cookie をブロックする] を有効にすると、すべてのコンテキストでサードパーティ Cookie がブロックされます。関連ウェブサイト セットや、軽減策(ヒューリスティック ベースの例外など)を実施している場合など、サードパーティ Cookie が使用可能な状況でもブロックされます。

chrome://settings/cookies ページ、サードパーティ Cookie のブロックを選択
サードパーティ Cookie をブロックする: chrome://settings/cookies

ただし、chrome://settings/cookies で [サードパーティ Cookie をブロックする] が有効になっている場合は、[関連サイトにグループ内のアクティビティの表示を許可する] を有効にすることで、関連ウェブサイト セット内のサードパーティ Cookie を許可できます。

chrome://settings で、サードパーティ Cookie がブロックされている場合に関連ウェブサイト セットを許可する方法
サードパーティの Cookie がブロックされている場合、関連ウェブサイト セットを許可する

chrome://settings/trackingProtection

トラッキング防止機能のテストグループに属する Chrome クライアントの 1% のユーザーは、サードパーティ Cookie をデフォルトで制限しています。これらのユーザーは、chrome://settings/trackingProtection からのすべてのサードパーティ Cookie をブロックできます。これは、chrome://settings/cookies からのサードパーティ Cookie をブロックすると同じ意味を持ちます。

chrome://settings/trackingProtection ページ、選択したサードパーティ Cookie をすべてブロックする
すべてのサードパーティ Cookie をブロックする: chrome://settings/trackingProtection

サードパーティの Cookie を許可する

chrome://settings から、ユーザーはサードパーティ Cookie へのアクセスを許可するサイトのリストにサイトを追加できます。

chrome://settings/cookies: サードパーティ Cookie の使用が許可されているサイト
chrome://settings ページ: サードパーティ Cookie の使用が許可されているサイト

また、サードパーティ Cookie がブロックまたは制限されている場合、サードパーティ Cookie を使用しているサイトでは、アドレスバー(アドレスバー)に目のアイコンが表示されます。

サイト web.dev のアドレスバー(オムニボックス)と目のアイコンが表示されています
Chrome のアドレスバーの目のアイコン

目のアイコンをクリックすると、ユーザーは現在のサイトに対するサードパーティ Cookie を一時的に許可できます。

サイトの web.dev でアドレスバーが表示され、現在のサイトで許可されているサードパーティ Cookie が表示されています。
現在のサイトで許可されているサードパーティ Cookie

トラッキング防止機能 グループのユーザーの 1% に、トラッキング防止ダイアログが表示されます。

Chrome トラッキング防止機能の UI: 現在のサイトでサードパーティ Cookie が許可されています
Chrome トラッキング防止機能の UI: 現在のサイトでサードパーティ Cookie が許可されています

目のアイコンを使用してサイトでサードパーティ Cookie を許可した場合、有効期限が 90 日であることを除き、chrome://settings で [サードパーティ Cookie の使用が許可されているサイト] にサイトを追加するのと同じ効果があります。

サードパーティ Cookie の使用が許可されているサイトが表示されている chrome://settings ページ
chrome://settings: サードパーティ Cookie の使用が許可されているサイト

有効期限が切れた後、必要に応じて目のアイコンから一時的な除外を更新し、サイトがサードパーティ Cookie に引き続きアクセスできるようにします。

サードパーティ Cookie の個々のサイトへのアクセスを取り消すこともできます。これにより、サードパーティ Cookie の使用が許可されているサイトのリストから現在のサイトが削除されます。

Chrome UI: サードパーティ Cookie がブロックされています
Chrome UI: サードパーティ Cookie がブロックされています

chrome://settings/content/siteData

これにより、ユーザーは個々のドメイン、ファーストパーティまたはサードパーティからのデータ保存(Cookie を含む)を許可またはブロックできます。(一方、chrome://settings/cookies または chrome://settings/trackingProtection から [サードパーティ Cookie の使用が許可されているサイト] にサイトを追加してサードパーティ Cookie へのアクセスを許可すると、そのサイトでどのドメインからでも、すべてのサードパーティ Cookie の設定と読み取りが可能になります)。

chrome://settings/content/siteData がテストの妨げにならないようにする必要があります。

Chrome 設定ページ: [サイトによるデバイスへのデータの保存を許可しない] が選択されています。デバイスへのデータの保存が許可されているサイトに、thirdparty.example が追加されました
chrome://settings/content/siteData ページ

ブロックされる一時的な緩和策と例外にはどのようなものがありますか?

トラッキング防止機能では、デフォルトでサードパーティ Cookie が制限されますが、ヒューリスティック ベースの例外デプリケーション トライアルデプリケーション トライアルの猶予期間など、サードパーティ Cookie を一時的に許可するための緩和策も許可されています。chrome://settings からのサードパーティ Cookie をすべてブロックすると、こうした緩和策の一部がオーバーライドされます。

✅ サードパーティ Cookie が許可されている
❯ サードパーティ Cookie がブロックされる

設定 プライバシー サンドボックス API 一時的な緩和策 ユーザー設定
チップ Storage Access API とプロンプト 関連ウェブサイト セット ヒューリスティック ベースの例外 サポート終了トライアル サポート終了に対する試用期間の猶予期間 特定のサイトのサードパーティ Cookie を許可する
トラッキング防止機能が有効で、
chrome://settings/trackingProtection の「すべてのサードパーティ Cookie をブロックする」が無効になっています
トラッキング防止機能が有効で、
chrome://settings/trackingProtection の「すべてのサードパーティ Cookie をブロックする」が有効になっています
トラッキング防止機能が有効ではありません。
chrome://settings/cookies の「サードパーティの Cookie をブロックする」が 無効になっています
ユーザー設定によって異なる

Chrome フラグ

サードパーティ Cookie を 1 人のユーザーに対して許可するかブロックするかは、いくつかの Chrome フラグによって決まります。

コマンドライン フラグでさまざまな Chrome チャンネルを定期的に使用する場合は、チャンネルごとに関数を作成し、シェルの RC ファイルに追加することをおすすめします。たとえば、macOS の場合は次のようになります。

  1. ターミナルを開きます。
  2. 関数を作成します。
    cf(){ open -a 'Google Chrome Canary' --args $\*; }
  3. 関数をフラグを指定して呼び出して使用します。例:
    cf --enable-features=TrackingProtection3pcd

非推奨トライアル

Chrome では、サードパーティ Cookie のサポート終了 トライアルを提供しています。これにより、障害が発生したサイトやサービスがサードパーティ Cookie への依存関係から移行するための時間延長をリクエストできるようになります。ファーストパーティまたはサードパーティのトライアルに参加すると、埋め込みサービスや、広告以外のユースケースで Cookie を使用するサイトに対するサードパーティ Cookie の制限が一時的に解除されます。

非推奨トライアルの猶予期間

Chrome では、ファースト パーティまたはサードパーティのデプリケーション トライアルに登録されている対象オリジンがデプリケーション トライアル トークンをデプロイする間、猶予期間を設けています。猶予期間中は、トライアル トークンをまだデプロイしていない場合でも、参加者は Chrome でサードパーティ Cookie にアクセスできます。

重要なサイト除外

重要なサービスを提供する一部のサイトでは、デプリケーション トライアル トークンをデプロイすることなく引き続きサードパーティ Cookie にアクセスできる一時的な免除が提供されます。

ヒューリスティック ベースの例外

サードパーティ Cookie の段階的廃止中、Chrome は障害を軽減するために、特定のシナリオでサードパーティ Cookie への一時的なアクセス権を付与するヒューリスティックを使用します。これは一時的な措置であり、将来的には、サイトが長期的なソリューションに移行するにつれて、ヒューリスティックが完全に削除されることが予想されます。

ヒューリスティック ベースの例外シナリオでは、Chrome がサードパーティ Cookie へのアクセス権を自動的に付与する特定のシナリオについて詳しく説明します。

ヒューリスティック ベースの例外のデモを使用すると、ヒューリスティックの例外の有無にかかわらず、サードパーティ Cookie のアクセスをテストできます。

Chrome を利用したテスト

Chrome がサポートするテストモードを使用すると、サイトはサードパーティ Cookie なしでサイトがどのように機能するかをプレビューできます。一定の割合の Chrome クライアントが、モード A またはモード B のテストグループ アームのいずれかにランダムに割り当てられ、各アームにはリクエスト ヘッダーまたは navigator.cookieDeprecationLabel からアクセスできるラベルが付けられます。

テスト群をモードに追加しても、サードパーティ Cookie を含め、Chrome の動作には影響しません。モード B のテスト群は 4 つあり、合計 1% の Chrome クライアントにランダムに割り当てられます(4 つの各群に 0.25%)。これらのテスト群に割り当てられた Chrome クライアントでは、Cookie がブロックされます。

また、Chrome Canary、Dev、Beta のクライアントの 20% で Cookie が制限されています。

  • Chrome クライアントは、モード B のテスト群に割り当てられている場合でも、サードパーティ Cookie の使用が許可されているサイトに追加されたサイトのサードパーティ Cookie にアクセスできます(モード B のテスト群はすべてデフォルトでサードパーティ Cookie をブロックします)。
  • さまざまなシナリオをテストするための Chrome のフラグでは、Chrome を利用したテスト群を現在の Chrome クライアントに対して許可、禁止、または強制的に設定する方法が説明されています。

Chrome Enterprise のポリシー

BlockThirdPartyCookies ポリシーを無効に設定すると、クロスサイト Cookie が許可されます。このポリシーを有効に設定した場合、これらのページでサードパーティ Cookie は設定されません。このポリシーを未設定のままにした場合、サードパーティ Cookie がデフォルトで許可され、ユーザーは chrome://settings からのサードパーティ Cookie をブロックできます。

詳しくは、Chrome Enterprise のヘルプセンター記事をご覧ください。

  • ユーザーは、chrome://settings フラグまたは Chrome フラグでエンタープライズ ポリシーをオーバーライドできません。

このセクションでは、ユーザーまたはサイトに対してサードパーティ Cookie が許可されているかブロックされているかを確認する方法について説明します。

chrome://settings

chrome://settings/cookies(または chrome://settings/trackingProtection)で、サードパーティ Cookie をブロックするユーザー設定、サードパーティ Cookie を制限するユーザー設定、または特定のサイトに対してサードパーティ Cookie を許可するユーザー設定を確認します。

同様に、chrome://settings/content/siteData で、個々のドメインからのデータ ストレージ(Cookie を含む)を許可またはブロックする設定を確認します。

chrome://policy

Chrome Enterprise 環境では、ブラウザに適用されているポリシーによって、ユーザーが遭遇するエクスペリエンスとは異なるエクスペリエンス、またはその逆を体験できる可能性があります。テストでは、管理されていない仮想マシンまたはデバイスの使用を検討してください。

chrome://policy ページには、Chrome Enterprise のインストールによって管理されるブラウザに設定されたポリシーが表示されます。

ポリシーが設定されている Chrome Enterprise 環境での chrome://policy
ポリシーが設定された Chrome Enterprise 環境の chrome://policy

Chrome Enterprise のポリシーでは、サードパーティ Cookie をブロックしたり、特定のサイトに対してサードパーティ Cookie を許可したりするようにポリシーを設定する方法について説明します。

Chrome DevTools

[問題]、[アプリケーション]、[ネットワーク] の各パネルには、Cookie に関する情報や、サードパーティ Cookie がブラウザによってブロックされているかどうかが表示されます。

[アプリケーション] パネルには、オリジンのトライアルに関する情報が表示されます。また、サイトがサードパーティ Cookie のサポート終了トライアルに登録されているかどうかも表示されます。

Cookie を追加、編集、削除する方法や、サードパーティ Cookie を特定して検査する方法の詳細については、Chrome DevTools のドキュメントをご覧ください。

Privacy Sandbox Analysis Tool(PSAT)

PSAT Chrome 拡張機能を使用すると、Chrome DevTools にツールが追加されます。これにより、Cookie の使用状況を把握し、プライバシーを保護する新しい Chrome API に関するガイダンスを得ることができます。

PSAT はコマンドライン インターフェースも提供します。

テスト用のサイト

プライバシー サンドボックス チームは、サードパーティ Cookie のテストをサポートするために複数のサイトを運営しています。

プライバシー サンドボックスのデモでは、リンク先の 2 つのサイトが提供されています。これらは、主要なユーザー ジャーニーとユースケースをさまざまなテストで試して、サードパーティ Cookie の制限によってどのような影響を受けるかを理解するのに役立ちます。

プライバシー サンドボックスのデモページ。分析トラッキング、埋め込みコンテンツ、ショッピング カート、reCAPTCHA などの重要なユースケースが示されています。
プライバシー サンドボックスのデモ

Chrome のクライアントまたはプロファイルを変更する

Chrome クライアントは、デバイスへのインストールに相当します。つまり、ユーザーデータ ディレクトリです。

各 Chrome プロファイルは、ユーザーデータ ディレクトリ内のサブディレクトリです。

コマンドラインから Chrome を実行する場合は、--user-data-dir フラグを使用してユーザーデータ ディレクトリを設定できます。

つまり、開発用に別個のユーザーデータ ディレクトリと、固有のプロファイル サブディレクトリを作成できます。新しいユーザー データ ディレクトリを作成すると、Chrome は新規にインストールされたときと同様に動作するため、プロファイル関連の問題をデバッグする場合に役立ちます。

新しい一時ユーザー ディレクトリを指定してコマンドラインから Chrome を実行するには、次のフラグを使用します。

--user-data-dir=$(mktemp -d)

補足説明