whitelistParentDomain 및 whitelistIframeDomains

이러한 구성을 사용하면 iFrame 및 상위 페이지에 구현된 ID 서비스 코드의 다른 인스턴스가 서로 통신할 수 있습니다. 상위 페이지/도메인을 제어할 수 있거나 제어할 수 없고 제어하는 도메인의 iFrame에서 ID 서비스 코드가 로드되는 2개의 특정 사용 사례와 관련된 문제를 해결하는 데 도움이 되도록 설계되었습니다. VisitorAPI.js 코드 버전 2.2 이상에서 사용할 수 있습니다.

내용:

구문

이 코드를 사용하는 경우 두 구성 요소가 모두 필요합니다.

구성 구문 설명

whitelistParentDomain: " 상위 페이지의 도메인 이름 "

문자열로 전달된 단일 도메인 이름을 허용합니다.

whitelistIframeDomains: [ "iFrame 도메인","iFrame 도메인","iFrame 도메인" ]

배열로 전달된 하나 이상의 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"], 
 ... 
 } 
);

사용 사례

이러한 구성은 브라우저가 서드파티 쿠키를 차단하거나 다음 조건 중 하나가 적용되는 경우 ID 서비스 쿠키를 설정하고 방문자 ID를 할당하는 문제를 해결하는 데 도움이 됩니다.

  • 상위 페이지/도메인을 제어하거나 제어하지 않습니다.
  • ID 서비스 코드가 상위 페이지에 설치되어 있지 않지만 iFrame에서 구현됩니다.

iFrame에서 비디오 하트비트를 사용하여 비디오를 제공할 때 이러한 구성을 구현할 수도 있습니다. 비디오 하트비트가 올바르게 작동하려면 ID 서비스 ID(MID)가 필요합니다.

사용 사례 1: 브라우저가 서드파티 쿠키를 차단하며 ID 서비스가 iFrame 및 상위 페이지에 구현됨

사용 사례 요소 설명

조건

이 사용 사례에는 다음 조건이 포함됩니다.

  • 회사 A는 홈 페이지에서 ID 서비스를 구현합니다.
  • 회사 A는 홈 페이지의 iFrame에서 ID 서비스를 구현합니다.
  • 회사 A는 상위 페이지와 iFrame을 소유하며 두 위치에서 ID 서비스를 구현했습니다.
  • 고객은 서드파티 쿠키를 차단하는 브라우저에서 상위 페이지를 로드합니다.

결과

해당 조건에서 ID 서비스는:

  • 상위 페이지에서 올바르게 작동합니다. AMCV 쿠키를 요청 및 설정하고 사이트 방문자에게 고유 ID를 할당합니다.
  • iFrame에서 작동하지 않습니다. 이는 브라우저가 iFrame을 서드파티 도메인으로 보고 ID 서비스가 AMCV 쿠키를 설정하지 못하도록 하기 때문입니다.

솔루션

이러한 화이트리스트 구성을 사용하여 iFrame에서 ID 서비스 Visitor.getInstance 함수를 수정합니다. 코드에서 상위 및 하위 도메인을 지정합니다. 이러한 구성을 사용하여 iFrame의 ID 서비스 코드가 상위 페이지의 ID 서비스 코드에서 방문자 ID를 확인할 수 있습니다.

iFrame의 ID 서비스 코드가 응답 상위 페이지를 수신하지 못하면 이러한 구성은 로컬 방문자 ID를 생성합니다.

사용 사례 2: 제어하지 않거나 ID 서비스를 사용하지 않는 상위 페이지에 포함된 iFrame에서 ID 요청

사용 사례 요소 설명

조건

이 사용 사례에는 다음 조건이 포함됩니다.

  • 회사 A는 ID 서비스를 사용하지 않습니다.
  • 회사 A는 페이지에 iFrame을 로드합니다. 이 iFrame은 회사 B가 소유하고 회사 A가 아닌 별도의 도메인에 로드됩니다.
  • 브라우저는 서드파티 쿠키를 차단합니다.

결과

해당 조건에서 ID 서비스는:

  • iFrame에서 작동하지 않습니다. 이는 브라우저가 iFrame을 서드파티 도메인으로 보고 ID 서비스가 AMCV 쿠키를 설정하지 못하도록 하기 때문입니다.
  • 회사 A가 이 서비스를 사용하지 않으므로 상위 페이지에서 방문자 ID를 가져올 수 없습니다.

솔루션

이러한 화이트리스트 구성을 사용하여 iFrame에서 ID 서비스 Visitor.getInstance 함수를 수정합니다. 코드에서 상위 및 하위 도메인을 지정합니다. 이러한 구성을 사용하여 iFrame의 ID 서비스 코드가 상위 페이지의 ID 서비스 코드에서 방문자 ID를 확인할 수 있습니다.

iFrame의 ID 서비스 코드가 응답 상위 페이지를 수신하지 못하면 이러한 구성은 로컬 방문자 ID를 생성합니다.

구성 안전 및 보안

다음 이유로 이러한 구성을 안전하게 구현할 수 있습니다.

  • 상위 도메인 및 iFrame 도메인에 구현된 ID 서비스는 동일한 조직 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