setConsent

setConsent コマンドは、データを送信(オプトイン)、データを破棄(オプトアウト)または使用(同意は不明)する必要があ defaultConsent かどうかを Web SDKに指示します。

Web SDKは、次の標準をサポートしています。

このコマンドを使用すると、Web SDKはユーザーの環境設定を Cookie に書き込みます。 ユーザーが次回ブラウザーで web サイトを読み込むときに、SDKはこれらの永続的な環境設定を取得し、イベントをAdobeに送信できるかどうかを決定します。

Adobeでは、同意ダイアログの環境設定を Web SDKの同意とは別に保存することをお勧めします。 Web SDKでは、同意を取得する方法は提供していません。 ユーザーの環境設定とSDKの同期が保たれるように、ページが読み込まれるたびに setConsent コマンドを呼び出すことができます。 Web SDKは、同意が変更された場合にのみサーバーコールを行います。

ID 同期に関する考慮事項 identity-considerations

setConsent コマンドはデバイスレベルで動作するので、ID マップの ECID のみを使用します。 ID マップ内の他の ID は、setConsent コマンドでは考慮されません。

Web SDKには、2 つの補完的な同意設定コマンドがあります。

  • defaultConsent:このコマンドは、Web SDKを使用してAdobeのお客様の同意環境設定を取り込むためのものです。
  • setConsent:このコマンドは、サイト訪問者の同意環境設定を取り込むためのものです。

これらの設定を一緒に使用すると、設定された値に応じて、異なるデータ収集および cookie 設定結果になる可能性があります。

同意設定に基づいてデータ収集が発生するタイミングと cookie が設定されるタイミングについて理解するには、次の表を参照してください。

defaultConsent
setConsent
データ収集が発生
Web SDKはブラウザー cookie を設定します
in
in
in
out
×
in
設定なし
pending
in
pending
out
×
pending
設定なし
×
×
out
in
out
out
×
out
設定なし
×
×

同意設定で許可されている場合、次の Cookie が設定されます。

名前
最大経過年数
説明
AMCV_###@AdobeOrg
34128000 (395 日)
idMigrationEnabled が有効な場合に表示されます。 これは、サイトの一部がまだ visitor.js を使用している間に web SDKに移行する場合に役立ちます。
Demdex cookie
15552000 (180 日間)
ID 同期が有効な場合に存在します。 Audience Managerは、この cookie を設定してサイト訪問者に一意の ID を割り当てます。 demdex cookie は、Audience Manager が訪問者識別、ID 同期、セグメント化、モデリング、レポートなどの基本的な機能を実行するのに役立ちます。
kndctr_orgid_cluster
1800 (30 分)
現在のユーザーのリクエストに対応するEdge Network リージョンを格納します。 Edge Networkでリクエストを正しいリージョンにルーティングできるように、リージョンは URL パスで使用されます。 ユーザーが別の IP アドレスで接続する場合や、別のセッションで接続する場合は、リクエストは再び最も近いリージョンにルーティングされます。
kndct_orgid_identity
34128000 (395 日)
ECID と、ECID に関連するその他の情報を保存します。
kndctr_orgid_consent
15552000 (180 日間)
Web サイトのユーザー同意設定を格納します。
s_ecid
63115200 (2 年)
Experience Cloud ID (ECID)または MID のコピーが含まれます。 MID は、s_ecid=MCMID|<ECID> という構文に従うキーと値のペアとして保存されます。

設定済みの Web SDK インスタンスを呼び出す際に、setConsent コマンドを実行します。 このコマンドには、次のオブジェクトを含めることができます。

  • consent[]: consent オブジェクトの配列。 同意オブジェクトの形式は、選択した標準とバージョンに応じて異なります。 同意標準に応じた、各同意オブジェクトの例については、以下のタブを参照してください。
  • identityMap:ECID の生成方法と、同意情報が関連付けられている ID を制御するオブジェクト。 Adobeでは、setConsent などの他のコマンドの前に sendEvent を実行する場合、このオブジェクトを含めることをお勧めします。
  • edgeConfigOverrides: ​ データストリーム設定の上書き ​ を含むオブジェクト。
Adobe 2.0

Adobe Experience Platformにデータを送信する場合、プロファイルスキーマにプライバシースキーマフィールドグループを含める必要があります。 Adobe 2.0 標準について詳しくは、Adobe Experience Platformにおけるガバナンス、プライバシー、セキュリティ ​ を参照してください。 consents プロファイルフィールドグループの Consents and Preferences フィールドのスキーマに対応する、以下の値オブジェクト内にデータを追加できます。

  • standard:選択する同意標準。 このプロパティをAdobe 2.0 標準の "Adobe" に設定します。

  • version:同意標準のバージョンを表す文字列。 このプロパティをAdobe 2.0 標準の "2.0" に設定します。

  • value:同意値を含むオブジェクト。

    • value.collect.val:同意値。 これを「ユーザーがオプトインする際に "y"」および「ユーザーがオプトアウトする際に "n"」に設定します。
    • value.metadata.time:ユーザーが同意設定を最後に更新した際のタイムスタンプ。
code language-js
// Set consent using the Adobe 2.0 standard
alloy("setConsent", {
  "consent": [{
    "standard": "Adobe",
    "version": "2.0",
    "value": {
      "collect": {
        "val": "y"
      },
      "metadata": {
        "time": "YYYY-03-17T15:48:42-07:00"
      }
    }
  }]
});
IAB TCF 2.0

Interactive Advertising Bureau Europe (IAB)の Transparency and Consent Framework (TCF)標準で提供されるユーザー同意環境設定を記録するには、以下に示すように同意文字列を設定します。

この方法で同意が設定されると、リアルタイム顧客プロファイルが同意情報で更新されます。 これを機能させるには、プロファイル XDM スキーマに ​ プロファイルプライバシースキーマフィールドグループ ​ を含める必要があります。 イベントを送信する場合、IAB 同意情報をイベント XDM オブジェクトに手動で追加する必要があります。 Web SDKは、イベントに同意情報を自動的に含めません。

イベントで同意情報を送信するには、Profile 対応の XDM ExperienceEvent スキーマに Experience Event Privacy フィールドグループを追加する必要があります。 これを設定する手順については、データセット準備ガイドの ExperienceEvent スキーマの更新 ​ に関する節を参照してください。

  • standard:選択する同意標準。 IAB TCF 2.0 標準の場合、このプロパティを "IAB TCF" に設定します。
  • version:同意標準のバージョンを表す文字列。 IAB TCF 2.0 標準の場合、このプロパティを "2.0" に設定します。
  • value:同意値を含む文字列。
  • gdprApplies:この同意値に GDPR が適用されるかどうかを決定するブール値。 デフォルト値は true です。
  • gdprContainsPersonalData:このユーザーに関連付けられたイベントデータに個人データが含まれているかどうかを判断するブール値。 デフォルト値は false です。
code language-js
// Set consent using the IAB TCF 2.0 standard
alloy("setConsent", {
  consent: [{
    "standard": "IAB TCF",
    "version": "2.0",
    "value": "CO052l-O052l-DGAMBFRACBgAIBAAAAABIYgEawAQEagAAAA",
    "gdprApplies": true,
    "gdprContainsPersonalData": true
  }]
});

IAB TCF 2.0 API は、顧客が同意を更新した場合にのイベントを提供します。 この問題は、顧客が最初に環境設定を行い、顧客が環境設定を更新した場合に発生します。 イベントリスナーを追加して、setConsent のコマンドを実行できます。

code language-js
const identityMap = { ... };
window.__tcfapi('addEventListener', 2, function (tcData, success) {
  if (success && tcData.eventStatus === 'useractioncomplete') {
    window.alloy("setConsent", {
      identityMap,
      consent: [
        {
          standard: "IAB TCF",
          version: "2.0",
          value: tcData.tcString,
          gdprApplies: tcData.gdprApplies
        }
      ]
    });
  }
});

上記のコードブロックは useractioncomplete イベントをリッスンして同意を設定し、同意文字列と gdprApplies フラグを渡します。 顧客のカスタム ID がある場合は、必ず identityMap 変数に入力します。

Adobe 1.0
  • standard:選択する同意標準。 Adobe 1.0 標準の場合、このプロパティを "Adobe" に設定します。
  • version:同意標準のバージョンを表す文字列。 Adobe 1.0 標準の場合、このプロパティを "1.0" に設定します。
  • value.general:同意値。 これを「ユーザーがオプトインする際に "in"」および「ユーザーがオプトアウトする際に "out"」に設定します。
code language-js
// Set consent using the Adobe 1.0 standard
alloy("setConsent", {
  "consent": [{
    "standard": "Adobe",
    "version": "1.0",
    "value": {
      "general": "in"
    }
  }]
});

1 回の要求で複数の規格を送信する multiple-standards

また、Web SDKは、次の例に示すように、リクエストでの複数の同意オブジェクトの送信もサポートしています。

alloy("setConsent", {
    consent: [{
        standard: "Adobe",
        version: "2.0",
        value: {
            collect: {
                val: "y"
            },
            metadata: {
                time: "YYYY-03-17T15:48:42-07:00"
            }
        }
    }, {
        standard: "IAB TCF",
        version: "2.0",
        value: "CO1Z4yuO1Z4yuAcABBENArCsAP_AAH_AACiQGCNX_T5eb2vj-3Zdt_tkaYwf55y3o-wzhhaIse8NwIeH7BoGP2MwvBX4JiQCGBAkkiKBAQdtHGhcCQABgIhRiTKMYk2MjzNKJLJAilsbe0NYCD9mnsHT3ZCY70--u__7P3fAwQgkwVLwCRIWwgJJs0ohTABCOICpBwCUEIQEClhoACAnYFAR6gAAAIDAACAAAAEEEBAIABAAAkIgAAAEBAKACIBAACAEaAhAARIEAsAJEgCAAVA0JACKIIQBCDgwCjlACAoAAAAA.YAAAAAAAAAAA",
        gdprApplies: true
    }]
});

同意設定の保持 persistence

setConsent コマンドを使用して web SDKにユーザーの環境設定を伝えると、SDKはユーザーの環境設定を Cookie に保持します。 ユーザーが次にブラウザーで web サイトを読み込むときに、Web SDKはこれらの永続化された環境設定を取得し、使用してイベントをAdobeに送信できるかどうかを判断します。

ユーザーの環境設定を個別に保存して、現在の環境設定を使用して同意ダイアログを表示できます。 Web SDKからユーザーの環境設定を取得する方法はありません。 ユーザーの環境設定とSDKの同期が保たれるように、ページが読み込まれるたびに setConsent コマンドを呼び出すことができます。 Web SDKは、環境設定が変更された場合にのみサーバーコールを行います。

Web SDK タグ拡張機能を使用して同意を設定

このコマンドと同等の web SDK タグ拡張機能は、Set consent のアクションです。

recommendation-more-help
1ae86b30-e55e-49c1-ab11-9d0356a5f3e1