制限付き広告とファーストパーティ識別子の設定

制限付き広告を使用すると、ユーザーが個人データの共有に同意していない場合でも、アプリで広告を配信できます。制限付き広告モードでは、広告の選択を目的とする個人データの収集、共有、使用が停止されます。ユーザーが個人データの共有を拒否した場合でも、この機能により広告の配信を継続できます。

このガイドでは、アプリで制限付き広告の設定を使用する方法と、アプリの動作を Google アド マネージャー ネットワークの全般設定と一致させる方法について説明します。

クライアントの制限付き広告の設定を構成する

PAL では、ユーザーのプライバシーとデータ使用に関する管理を強化するため、設定の処理方法を更新しています。PAL バージョン 1.90.0 では、forceLimitedAds プロパティが導入され、既存の allowStorage プロパティが非推奨になりました。これらのプロパティは ConsentSettings クラスにあります。

バージョン 1.90.0 以降では、PAL がデバイスから透明性と同意に関するフレームワーク(TCF)データを読み取り、ローカル ストレージに対するユーザーの同意を判断します。TCF データの読み取りに関するこの変更により、既存の allowStorage プロパティは冗長になります。アプリは引き続き、広告タグの URL で gdpr= パラメータと gdpr_consent= パラメータを渡す必要があります。

TCF に基づく自動判定が不十分な場合は、アプリで forceLimitedAds プロパティを直接設定します。詳しくは、パブリッシャー様による IAB ヨーロッパの TCF の統合をご覧ください。forceLimitedAds プロパティを true 値に設定すると、PAL はサーバーに送信されるノンスにユーザー ID を保存したり送信したりしなくなります。forceLimitedAds プロパティを true 値に設定することは、IMA(Interactive Media Ads)SDK の広告リクエスト URL に ltd=1 パラメータを追加することと同じです。制限付き広告について詳しくは、ltd(制限付き広告)をご覧ください。forceLimitedAds プロパティを true 値に設定すると、PAL はノンスに ltd=1 パラメータを含めます。

アプリの現在の動作を維持するには、これまで allowStorage プロパティを設定していない場合でも、実装の更新が必要となることがあります。既存の allowStorage プロパティはデフォルトで false 値に設定され、制限付き広告が有効になります。forceLimitedAds プロパティのデフォルト値は false で、制限付き広告は有効になりません

TCF の判定のフェーズ 1 の更新

PAL HTML5 フェーズ 1 のリリースでは、ConsentSettings.allowStorage プロパティから制限付き広告の TCF ベースの自動判定への移行を準備します。

移行期間中、PAL はユーザーの TCF データ、既存の allowStorage プロパティ、最新の forceLimitedAds プロパティを考慮します。このフェーズでは、常に allowStorage プロパティを true 値に設定して、TCF データに基づいて制限付き広告が適用されるかどうかを PAL が判断できるようにする必要があります。TCF の判定に関係なく制限付き広告を有効にする場合は、forceLimitedAds プロパティを true 値に設定します。

フェーズ 1 では、PAL は次のいずれかの状況で制限付き広告を有効にします。

  • allowStorage プロパティは false 値または未設定です。この設定は、更新されていないアプリをサポートするためだけのものなので、allowStorage プロパティに使用することはおすすめしません。
  • forceLimitedAds プロパティは true 値です。
  • PAL は、IAB(Interactive Advertising Bureau)TCF の目的 1 の同意が付与されていないことを検出します。

次の表に、考えられるすべての状態と、制限付き広告が有効かどうかを示します。

TCF の目的 1 の同意 allowStorage 件の宿泊施設 forceLimitedAds 件の宿泊施設 制限付き広告が有効になっている
許可 正しい 正しい 正しい
未許可 正しい 正しい 正しい
許可 正しい False(デフォルト) 誤り
未許可 正しい False(デフォルト) 正しい
許可 False(デフォルト) 正しい 正しい
未許可 False(デフォルト) 正しい 正しい
許可 False(デフォルト) False(デフォルト) 正しい
未許可 False(デフォルト) False(デフォルト) 正しい

TCF フェーズ 2 の判定に備える

フェーズ 2 のリリースでは、allowStorage プロパティから機能が削除されます。フェーズ 2 のリリースは、フェーズ 1 のリリースから 90 日後(2026 年 3 月 10 日を予定)に予定されています。この日までに、ConsentSettings.forceLimitedAds パラメータを使用するように実装を更新する必要があります。

フェーズ 2 のリリースでは、PAL は TCF の目的 1 の同意がないことと、オプションの ConsentSettings.forceLimitedAds プロパティのみに基づいて制限付き広告を有効にします。

TCF の目的 1 の同意 forceLimitedAds 件の宿泊施設 制限付き広告が有効
許可 正しい 正しい
未許可 正しい 正しい
許可 False(デフォルト) 誤り
未許可 False(デフォルト) 正しい

Google アド マネージャーのグローバル設定を一致させる

アド マネージャーの設定 [プログラマティック広告の制限] または [ウェブ広告のファーストパーティ Cookie] を更新する場合は、これらの新しい API を使用して、アド マネージャーの設定を一致させます。API を使用しない場合、PAL はサーバーへの広告リクエストで使用されるノンスに ID を含める可能性があります。ただし、アド マネージャーの設定によっては、アド マネージャーがシグナルをドロップする可能性があります。

API は次のとおりです。

  • disableLimitedAdsStorage - 無効なトラフィック検出専用の Cookie と、制限付き広告でのローカル ストレージの使用を無効にします。アド マネージャーの [管理] > [グローバル設定] で [プログラマティック制限付き広告] の設定を更新した場合は、この API を使用して、PAL での制限付き広告のローカル ストレージの使用を無効にします。なお、この設定は制限なしの広告には適用されません。
  • disableFirstPartyIdentifiers - 広告選択に使用されるファーストパーティ識別子を無効にします。アド マネージャーの [管理者] > [全般設定] で [ウェブ広告のファーストパーティ Cookie] 設定を更新した場合は、この API を使用して PAL でそのような識別子を無効にします。なお、この設定は、無効なトラフィックの検出を目的とした Cookie とローカル ストレージの使用には適用されません。

次の例では、PAL 実装でユーザーのプライバシーとデータの使用を処理します。

const consentSettings = new goog.pal.ConsentSettings();
consentSettings.allowStorage = true;
// During the PAL Phase 1 release, best practice is to always set the
// `allowStorage` property to a `true` value to allow PAL to automatically
// determine whether limited ads applies based on the TCF data.
// To enable limited ads regardless of the TCF determination, set the
// `forceLimitedAds` property to a `true` value.

const adManagerSettings = new goog.pal.GoogleAdManagerSettings();
// Add this line if the "Programmatic limited ads" toggle is turned off in
// Ad Manager.
adManagerSettings.disableLimitedAdsStorage = true;
// Add this line if the "First party cookies for ads on web" toggle
// is turned off in Ad Manager.
adManagerSettings.disableFirstPartyIdentifiers = true;

const nonceLoader = new goog.pal.NonceLoader(consentSettings, adManagerSettings);