whitelistParentDomain および whitelistIframeDomains

これらの設定を使用すると、iFrame と親ページに実装されている ID サービスコードのインスタンスが互いに通信できるようになります。これらの設定は、自社が管理しているドメインの iFrame に ID サービスコードを読み込む場合の 2 つの具体的な使用例(親ページまたはドメインを制御できる場合とできない場合)に関わる問題の解決に役立つように設計されています。これらは、VisitorAPI.js コードバージョン 2.2 以降で利用できます。

内容:

構文

このコードを使用する際には、どちらの設定要素も必要です。

設定の構文 説明

whitelistParentDomain: "親ページのドメイン名"

文字列として渡される単一のドメイン名を受け入れます。

whitelistIframeDomains: [ "iFrame ドメイン","iFrame ドメイン","iFrame ドメイン" ]

配列として渡される 1 つ以上の iFrame ドメイン名を受け入れます。

コードサンプル

設定が完了すると、ID サービスコードはこの例のようになります。

//Instantiate Visitor 
var visitor = Visitor.getInstance("Insert Experience Cloud Organization ID here",{ 
 ... 
 //Add parent page domain name and iFrame domain names 
 whitelistParentDomain: "parentpageA.com", 
 whitelistIframeDomains: ["iFrameDomain1.com","iFrameDomain2.com"], 
 ... 
 } 
);

使用例

これらの設定は、ブラウザーがサードパーティ Cookie をブロックし、以下のいずれかの条件に該当する場合に発生する、ID サービス Cookie 設定と訪問者 ID 割り当ての問題の解決に役立ちます。

  • 親ページまたはドメインを自社で管理していない。
  • ID サービスコードが親ページにインストールされていないが、iFrame には実装されている。
ヒント

iFrame でビデオハートビートを使用してビデオを提供している場合も、これらの設定を実装することが推奨されます。ビデオハートビートを正しく動作させるには ID サービスの ID(MID)が必要です。

使用例 1:ブラウザーがサードパーティ Cookie をブロックし、ID サービスが iFrame および親ページに実装されている

使用例の要素 説明

条件

この使用例には以下の条件が含まれます。

  • A 社が自社のホームページに ID サービスを実装する。
  • A 社が自社のホームページの iFrame の ID サービスを実装する。
  • A 社が親ページおよび iFrame を所有し、両方に ID サービスを実装済みである。
  • 顧客がサードパーティ Cookie をブロックするブラウザーで親ページを読み込む。

結果

これらの条件に当てはまる場合、ID サービスの動作は以下のようになります。

  • 親ページでは正しく動作します。AMCV Cookie を要求して設定し、サイト訪問者に一意の ID を割り当てます。
  • iFrame では動作しません。これは、ブラウザーが iFrame をサードパーティドメインとみなして、ID サービスによる AMCV Cookie の設定を禁止するためです。

ソリューション

これらのホワイトリスト設定を使用して、iFrame の ID サービス Visitor.getInstance 関数を変更します。コードの親ドメインおよび子ドメインを指定します。これらの設定により、iFrame の ID サービスコードが親ページの ID サービスコードをチェックして訪問者 ID を確認できるようになります。

iFrame の ID サービスコードが親ページの応答を受信しない場合、これらの設定によってローカルの訪問者 ID が生成されます。

ユースケース 2:自社で管理していない iFrame、または ID サービスを使用していない親ページに埋め込まれた iFrame から ID をリクエストする

使用例の要素 説明

条件

この使用例には以下の条件が含まれます。

  • A 社は ID サービスを利用しない。
  • A 社がページ上の iFrame を読み込む。この iFrame は B 社が所有し、A 社とは別のドメインで読み込まれる。
  • ブラウザーはサードパーティ Cookie をブロックする。

結果

これらの条件に当てはまる場合、ID サービスの動作は以下のようになります。

  • iFrame では動作しません。これは、ブラウザーが iFrame をサードパーティドメインとみなして、ID サービスによる AMCV Cookie の設定を禁止するためです。
  • A 社はこのサービスを利用していないので、親ページから訪問者 ID を取得できません。

ソリューション

これらのホワイトリスト設定を使用して、iFrame の ID サービス Visitor.getInstance 関数を変更します。コードの親ドメインおよび子ドメインを指定します。これらの設定により、iFrame の ID サービスコードが親ページの ID サービスコードをチェックして訪問者 ID を確認できるようになります。

iFrame の ID サービスコードが親ページの応答を受信しない場合、これらの設定によってローカルの訪問者 ID が生成されます。

設定の安全性とセキュリティ

これらの設定は、以下の理由により安全に実装できます。

  • ID サービスは親ドメインに実装され、iFrame ドメインは同じ組織 ID を使用する必要があります。親または iFrame の組織 ID が異なる場合、これらのホワイトリスト設定は無効です。
  • これらの設定はコードで指定されているドメインおよび iFrame とのみ通信をおこないます。
  • iFrame と親ページの間の通信は、特定のフォーマットに従います。親ページの ID サービスが想定されているフォーマットでリクエストを受信しない場合、この共有プロセスは失敗します。

サポートされる訪問者 API メソッド

これらのホワイトリスト設定を実装する際に ID サービスでサポートされる公開 API メソッドは限定されています。サポートされるメソッドは、上記の使用例シナリオによって異なります。

使用例 サポートされるメソッド

例 1

  • getMarketingCloudID
  • getAudienceManagerLocationHint
  • getAudienceManagerBlob
  • getSupplementalDataID
  • getCustomerIDs

例 2

  • getSupplementalDataID
  • getMarketingCloudVisitorID

このページ

Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free
Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free
Adobe Maker Awards Banner

Time to shine!

Apply now for the 2021 Adobe Experience Maker Awards.

Apply now
Adobe Maker Awards Banner

Time to shine!

Apply now for the 2021 Adobe Experience Maker Awards.

Apply now