기존 고객에 맞게 사용자 환경 맞춤설정

공유 저장소 Worklet을 사용하여 알려진 고객을 식별합니다.

Shared Storage API는 가능한 많은 사용 사례를 지원하는 범용 크로스 사이트 스토리지용 개인 정보 보호 샌드박스 제안서입니다. 한 가지 예는 Chrome 104.0.5086.0 이상에서 테스트할 수 있는 알려진 고객을 식별하는 것입니다.

사용자가 사이트에 등록했는지 여부를 공유 저장소에 저장한 다음 사용자의 저장된 상태('알려진' 고객)에 따라 별도의 요소를 렌더링할 수 있습니다.

알려진 고객 설정

공유 저장소에서 알려진 고객을 식별하는 실험을 하려면 Chrome 104.0.5086.0 이상을 사용하고 있는지 확인하세요. 그런 다음 chrome://flags/#privacy-sandbox-ads-apis에서 개인 정보 보호 샌드박스 광고 API 실험 플래그를 사용 설정합니다.

이 API를 사용하려면 개인 정보 보호 샌드박스 Ads API 실험을 사용 설정하세요.

명령줄에서 --enable-features=PrivacySandboxAdsAPIsOverride,OverridePrivacySandboxSettingsLocalTesting,SharedStorageAPI,FencedFrames 플래그를 사용하여 공유 저장소를 사용 설정할 수도 있습니다.

코드 샘플로 실험

사용자가 다른 사이트에 표시되었는지에 따라 다른 요소를 렌더링할 수 있습니다. 예를 들어 결제 제공업체는 사용자가 결제 시스템 공급자의 사이트에 등록했는지 여부에 따라 '등록' 또는 '지금 구매' 버튼을 렌더링할 수 있습니다. 공유 저장장치를 사용하여 사용자의 상태를 설정하고 이 상태에 따라 사용자 환경을 맞춤설정할 수 있습니다.

이 예에서는 다음과 같이 정의됩니다.

  • known-customer.js가 프레임에 삽입되어 있습니다. 이 스크립트는 '등록' 또는 '구매하기'와 같이 사이트에 표시되어야 하는 버튼에 대한 옵션을 설정합니다.
  • known-customer-worklet.js는 사용자를 아는지 확인하는 공유 저장소 Worklet입니다. 사용자가 알려진 경우 정보가 반환됩니다. 사용자를 알 수 없는 경우 해당 정보가 반환되어 '등록' 버튼이 표시되며 사용자는 향후에 알려진 사용자로 표시됩니다.

known-customer.js

// The first URL for the "register" button is rendered for unknown users.
const BUTTON_URLS = [
  { url: `https://${advertiserUrl}/ads/register-button.html` },
  { url: `https://${advertiserUrl}/ads/buy-now-button.html` },
];

async function injectButton() {
  // Load the worklet module
  await window.sharedStorage.worklet.addModule('known-customer-worklet.js');

  // Set the initial status to unknown ('0' is unknown and '1' is known)
  window.sharedStorage.set('known-customer', 0, {
    ignoreIfPresent: true,
  });

  // Run the URL selection operation to choose the button based on the user status
  const fencedFrameConfig = await window.sharedStorage.selectURL('known-customer', BUTTON_URLS, {
    resolveToConfig: true
  });

  // Render the opaque URL into a fenced frame
  document.getElementById('button-slot').src = fencedFrameConfig;
}

injectButton();

known-customer-worklet.js

class SelectURLOperation {
  async run(urls) {
    const knownCustomer = await this.sharedStorage.get('known-customer');

    // '0' is unknown and '1' is known
    return parseInt(knownCustomer);
  }
}

register('known-customer', SelectURLOperation);

사용 사례

이는 공유 스토리지의 가능한 사용 사례 중 일부에 불과합니다. 의견을 받고 새로운 사용 사례를 탐색하면서 예시를 계속 추가할 예정입니다.

콘텐츠 선택사항

공유 저장소에서 수집한 정보를 기반으로 분리 프레임의 여러 웹사이트의 다른 콘텐츠를 선택하여 표시합니다. 이러한 사용 사례의 출력 게이트는 URL 선택입니다.

  • 광고 소재 순환게재: 광고 소재 ID, 조회수, 사용자 상호작용과 같은 데이터를 저장하여 여러 사이트에서 사용자에게 표시되는 광고 소재를 결정합니다.
  • A/B 테스트: 실험 그룹에 사용자를 할당한 다음 해당 그룹을 공유 저장소에 저장하면 크로스 사이트에서 액세스할 수 있습니다.
  • 커스텀 사용자 환경: 사용자의 등록 상태 또는 기타 사용자 상태를 기반으로 커스텀 콘텐츠와 클릭 유도 문구를 공유합니다.

요약 보고서 생성

Shared Storage로 정보를 수집하고 노이즈가 포함된 합산 요약 보고서를 생성함 이러한 사용 사례의 출력 게이트는 Private Aggregation API입니다.

  • 순 사용자 도달범위 측정: 많은 콘텐츠 제작자 및 광고주는 콘텐츠를 본 순 사용자 수를 알고 싶어 합니다. 공유 저장소를 사용하면 사용자가 처음 광고, 삽입된 동영상 또는 게시물을 볼 때를 기록하고, 다른 사이트에서 동일한 사용자가 중복 집계되는 것을 방지할 수 있습니다. 그런 다음 Private Aggregation API를 사용하여 도달범위에 대한 요약 보고서를 출력할 수 있습니다.
  • 인구통계 측정: 콘텐츠 제작자가 잠재고객의 인구통계를 알고 싶어하는 경우가 많습니다. 공유 저장소를 사용하면 퍼스트 파티 사이트와 같이 보유하고 있는 컨텍스트에서 사용자 인구통계 데이터를 기록하고, 집계 보고를 사용하여 삽입된 콘텐츠와 같은 다른 많은 사이트에서 이에 대해 보고할 수 있습니다.
  • K+ 게재빈도 측정: '유효 게재빈도'라고도 하며 사용자가 특정 콘텐츠를 인식하거나 기억하기 전에 최소 조회수가 있는 경우가 많습니다 (종종 광고 조회수와 관련하여). 공유 저장소를 사용하여 콘텐츠를 K회 이상 본 순 사용자에 대한 보고서를 작성할 수 있습니다.

참여 및 의견 공유

공유 저장소 제안은 논의 중이며 향후 변경될 수 있습니다. 이 API를 사용해 보고 의견을 보내 주세요.