プライバシーサンドボックス広告関連 API をテストする
プライバシーサンドボックスには、サイト間のトラッキングを必要とせずに広告のユースケースを有効にするための提案が含まれています。オリジントライアルは、開発者が実際のテストを通じて新しいウェブテクノロジーを評価し、フィードバックを提供する機会です。以前のオリジントライアルでは、サイトは個々の API に対してテストすることができました。Topics、FLEDGE、および Attribution Reporting API については、単一のオリジントライアルを提供することで、サイトがエンドツーエンドの広告ライフサイクルの初期バージョンを構成する複数の API を通して統一された実験を実行できるようになっています。これらの API は Chrome 101 ベータ版以降でテストできます。Chrome 101 ベータ版リリースでは、構成オプションのイテレーションを進めながら、ユーザーコントロールの更新も行われています。
開発者は、この単一のオリジントライアルに登録すると、Topics、FLEDGE、および Attribution Reporting API をテストすることができます。このガイドでは、API にアクセスするための構成手順と構成を検証する方法を説明し、API に対してテストするためのその他のリソースを提供しています。
オリジントライアルの目的
このオリジントライアルの目的は、複数のサイトで広告ライフサイクル全体にわたって意味のあるテストを行えるようにすることです。この行程に対応できるように、オリジントライアルには以下が含まれています。
- Topics:
document.browsingTopics()
を介してブラウザのトピックを観察し、それにアクセスします。 - FLEDGE: ブラウザのインタレストグループを管理し、それらのグループやその他のシグナルに基づいて広告の入札と選択を行います。
- このオリジントライアルでは、FLEDGE はデスクトップで利用でき、提案されたすべての機能の特定のサブセットが含まれています。詳細については、FLEDGE オリジントライアルの詳細をお読みください。
- Fenced frames: FLEDGE 広告オークションの落札者の不透明な URL をレンダリングします。
- アトリビューション レポート: 広告ライフサイクル全体のパフォーマンスを測定してレポートします。
このセットアップでは、これらすべての API にわたって統一のテストを行うことができますが、実装する側面を、必要に応じて選択することができます。
開発者がオリジントライアルに登録する方法
プライバシーサンドボックスの広告関連のトライアルに登録します。以下の HTML タグを使用して、API コードを実行するすべてのページにトライアルトークンを提供します。
- トップレベル ページの
<head>
セクションの<meta>
タグ:<meta http-equiv="origin-trial" content="TOKEN_GOES_HERE">
- トップレベル ページのレスポンスの HTTP ヘッダー:
Origin-Trial: TOKEN_GOES_HERE
オリジントライアルで利用できる一部の機能は、トップレベル サイトでサードパーティとしてサービスを提供する場合など、クロスサイト コンテキストでの使用を目的としています。これらの追加のコンテキストでオリジントライアルを有効にする必要がある場合は、必ず「Third-party matching」のオプションを選択してください。サードパーティ JavaScript からオリジントライアルを有効にするには、スクリプトから <meta>
タグをトップレベルのページ(独自のコンテンツではなく、ファーストパーティのページ)に注入します。以下に例を示します。
const otMeta = document.createElement('meta');
otMeta.setAttribute('http-equiv', 'origin-trial');
otMeta.setAttribute('content', 'TOKEN_GOES_HERE');
document.querySelector('head').appendChild(otMeta);
詳細については、Chrome のオリジントライアルを開始するためのガイドをご覧ください。
トライアル機能(FLEDGE の joinAdInterestGroup()
など)にアクセスする iframe は、そのオリジンと一致するトークンを提供する必要があります。
開発者によるローカルテスト
Topics、FLEDGE、および アトリビューション レポート の個々の開発者ドキュメントには、各 API のローカル開発者テストに関する具体的なガイダンスが記載されています。API はデフォルトではオンになっていないため、テスト用のフラグを使って有効にする必要があります。
テスト用に API を有効にするには、以下を行います。
- Chrome 101 ベータ版以降を使用してください。
- FLEDGE にはデスクトップ版の Chrome が必要です。
- API は Chrome の iOS バージョンでは使用できません。
- API の有効化には、
chrome://flags/#privacy-sandbox-ads-apis
フラグを使用します。- このフラグは、テストをより簡単に行えるように API を強制的にオンにします。対象のオリジントライアルユーザーを複製して、追加の設定で API を無効にできるようにするには、
--enable-features=BrowsingTopics,InterestGroupStorage,AllowURNsInIframes,PrivacySandboxAdsAPIs
という CLI フラグを使用して Chrome を起動する必要があります:。 - 個々の API には、よりきめ細かい設定を行うための追加のフラグがある場合があります。詳細については、個々のガイドを確認してください。
- 追加のフラグはこれと競合する可能性があるため、問題が発生した場合は、この 1 つのフラグのみを設定することを検討してください。
- このフラグは、テストをより簡単に行えるように API を強制的にオンにします。対象のオリジントライアルユーザーを複製して、追加の設定で API を無効にできるようにするには、
- Chrome 設定で 設定 > セキュリティとプライバシー > プライバシー サンドボックス に移動し、プライバシーサンドボックスのトライアルを有効にします。これには
chrome://settings/privacySandbox
からもアクセスできます。 - Chrome の設定で 設定 > セキュリティとプライバシー に移動し、サードパーティ Cookie を有効にします。Cookie とその他のサイト データを「すべての Cookie を許可する」または「シークレットモードでサードパーティの Cookie をブロックする」に設定します。これには
chrome://settings/cookies
からもアクセスできます。 - 標準のブラウジング セッションを開始します。シークレット モードは使用しないでください。
オリジントライアルの正しい構成を確認する方法
「Chrome のオリジントライアルのトラブルシューティング」には、オリジントライアルの構成を検証するための詳細なチェックリストが用意されています。
DevTools は、「アプリケーション」タブの「フレーム」にオリジントライアルのステータスを表示します。
以下に説明するように、オリジントライアルは有効なユーザーに対してのみアクティブとして表示されますが、開発者フラグを使用して、独自の本番サイトに対してテストすることもできます。
オリジントライアルの対象ユーザー
オリジン トライアルは、Chrome トラフィック全体のごく一部でのみ実行されるように設計されているため、サイトでオリジントライアルを有効にしても、ユーザーが API をアクティブにできない可能性があることを必ず想定する必要があります。オリジントライアルのアクティブな実験グループは、引く割合のユーザー数で開始され、トライアルが進むにつれてその数が増加する可能性があります。実験での Chrome ユーザーの割合は、サイトで有効になっているユーザーの割合と一致しない場合があることに注意してください。
ただし、サイト全体で統一されたテストを可能にするために、その対象ユーザーのセットはほぼ一貫したままにする必要があります。たとえば、ユーザーが参加しているサイト運営者のサイトで広告を表示したときにオリジントライアルの対象である場合、その同じユーザーは、参加している広告主のサイトで変換したときにも対象のままとなります。
ユーザーが対象となるには、以下に該当する必要があります。
- Chrome 101 ベータ版以降を使用していること。
- FLEDGE にはデスクトップ版の Chrome が必要です。
- Chrome の iOS バージョンではオリジントライアルを利用できません。
- アクティブなオリジントライアル期間に閲覧していること。
- 「設定」>「セキュリティとプライバシー」>「プライバシー サンドボックス」でプライバシーサンドボックスのトライアルが有効であること。
chrome://settings/privacySandbox
からもアクセスできます。 - 「設定」>「セキュリティとプライバシー」>「Cookie とその他のサイトデータ」でサードパーティ Cookie を有効にし、「すべての Cookie を許可する」または「シークレットモードでサードパーティ Cookie をブロックする」に設定していること。これには
chrome://settings/cookies
からもアクセスできます。 - 標準のブラウジング セッションを開始しており、シークレット モードは使用していないこと。
- Chrome のアクティブな実験グループに属していること。
開発者の機能が API サポートを検出する仕組み
他のウェブプラットフォーム機能と同様に、使用する前に機能がサポートされていることを検出する必要があります。
Topics
document
内の browsingTopics()
関数と、「browsing-topics」のアクセス許可ポリシーを確認してください。
if ('browsingTopics' in document && document.featurePolicy.allowsFeature('browsing-topics')) {
// Topics enabled
}
FLEDGE
広告のインタレストグループに参加する場合は、navigator
の joinAdInterestGroup
関数と「join-ad-interest-group」のアクセス許可ポリシーを確認してください。
if ('joinAdInterestGroup' in navigator && document.featurePolicy.allowsFeature('join-ad-interest-group')) {
// FLEDGE interest group enabled
}
オークションを実行する場合は、navigator
の runAdAuction
関数と、「run-ad-auction」の権限ポリシーを確認してください。
if ('runAdAuction' in navigator && document.featurePolicy.allowsFeature('run-ad-auction')) {
// FLEDGE auction enabled
}
アトリビューション レポート
window
内の attributionReporting
オブジェクトと、「attribution-reporting」のアクセス許可ポリシーを確認してください。
if (document.featurePolicy.allowsFeature('attribution-reporting')) {
// Attribution Reporting API enabled
}
フィードバックの提供先とサポート
フィードバックの概要ページには、プライバシーサンドボックスのさまざまな側面に関するフィードバックを提供するためのさまざまな方法が詳しく説明されています。Topics、FLEDGE、および アトリビューション レポート には、各 API の個別のリンクを提供する特定のセクションがあります。
また、重要なニュースの概要を提供するプライバシーサンドボックスの進行状況に関する定期的な更新も提供しています。