您為個別請求指定的任何「受限的資料處理」設定,將會一體適用。舉例來說,如果您針對美國某州境內適用受限資料處理模式的使用者送出了廣告請求,並為該請求加入受限的資料處理參數,就會啟用「受限的資料處理」模式,只向使用者放送非個人化廣告。
網頁採用 GPT 和 AdSense 標記時適用的受限資料處理設定
請求廣告
根據預設,傳送給 Google 的廣告請求不會限制資料處理方式且會放送個人化廣告,同時將根據網頁內容及該網頁訪客的記錄來選擇廣告。基於多項法規遵循和隱私權理由,Google 目前支援透過廣告代碼傳送信號,這些理由包括:
- Google 發布商廣告代碼中的非個人化廣告設定
(Ad Manager、AdMob、Android 和 iOS、AdSense) - 在廣告請求中加入未滿規定年齡歐洲經濟區使用者標記 (TFUA)
(Ad Manager、AdMob、AdSense) - 在廣告請求中加入兒童導向內容標記 (TFCD)
(Ad Manager、AdMob、AdSense)發布商可選擇使用 TFCD 參數,在廣告請求中加入未滿規定年齡使用者標記。若設定 TFCD 參數,「受限的資料處理」模式會一併啟用。
本文將簡述要如何透過廣告代碼請求「受限的資料處理」模式。當您啟用「受限的資料處理」時,Google 會限制資料的使用方式,而且只會放送非個人化廣告。如果您想替造訪您資源,且符合資格的美國境內使用者啟用「受限的資料處理」,則不必修改廣告代碼。如要進一步瞭解「受限的資料處理」,包括在使用者介面中的啟用方式,請參閱 Google Ad Manager、AdMob 或 AdSense 說明中心。
如果發布商只想針對部分使用者啟用「受限的資料處理」模式,可運用 Google 發布商廣告代碼和 AdSense/Ad Exchange 非同步廣告代碼,按個別網頁觸發該模式。如果您選擇顯示「請勿銷售我的個人資訊」的拒絕接受連結,或許可以利用這個實用做法。您也可以針對拒絕銷售個人資訊的使用者送出「受限的資料處理」模式信號,確保遵循法規。若想進一步瞭解受限的資料處理模式,請參閱「協助發布商遵守美國州級隱私權法律」一文 (Google Ad Manager、AdMob、AdSense)。
- 若採用 GPT 廣告代碼,請使用下列程式碼片段:
googletag.pubads().setPrivacySettings({
'restrictDataProcessing': true
}); - 如果是 AdSense 和 Ad Exchange 非同步廣告代碼,請使用下列程式碼片段:
<ins class="adsbygoogle"
style="display:inline-block;width:728px;height:90px"
data-ad-client="ca-pub-0123456789abcdef"
data-ad-slot="0123456789"
data-restrict-data-processing="1"></ins>
採用上述方法後,下列支援的廣告代碼從網頁發出的 Google 廣告請求將會是「受限的資料處理」:GPT、AdSense 或 Ad Exchange 非同步廣告代碼 (adsbygoogle.js
),以及 IMA SDK。請在瀏覽器的開發人員工具中查看廣告請求,並在當中找出 &rdp=1
參數,確認廣告代碼會限制資料處理方式。
您可利用相同的 API 傳遞 false
和 0
(視 API 預期的類型而定),這樣就能停用「受限的資料處理」模式 (並重新啟用廣告個人化設定)。如果一個網頁包含多種 Google Ads 代碼 (例如同時包含 GPT 廣告代碼和 AdSense/Ad Exchange 非同步代碼),您必須為每種代碼分別設定 RDP。
採用其他標記時的「受限的資料處理」設定
GPT 回傳式曝光代碼
若您使用 GPT 回傳式曝光代碼,可以採用傳統 GPT 所用的 googletag.pubads().setPrivacySettings
API,將廣告請求標為已啟用「受限的資料處理」模式。
程式碼範例:
<script async
src="https://securepubads.g.doubleclick.net/tag/js/gpt.js"></script>
<div id='gpt-passback'>
<script>
window.googletag = window.googletag || {cmd: []};
googletag.cmd.push(function() {
googletag
.defineSlot('/123/sports', [300, 250], 'gpt-passback')
.addService(googletag.pubads());
googletag.pubads().setPrivacySettings({
'restrictDataProcessing': true
});
googletag.enableServices();
googletag.display('gpt-passback');
});
</script>
</div>
無代碼請求
如果您使用無代碼請求,就可以直接在廣告代碼請求網址中加入 rdp=[int]
參數,將廣告請求標為「受限的資料處理」。建議您及早在代碼中指定這個參數,以免網址遭到截斷。請指定 rdp=1
,將廣告請求標為已啟用「受限的資料處理」模式。如果略過這個參數,就會預設為停用「受限的資料處理」,並且允許個人化廣告。
程式碼範例:
https://securepubads.g.doubleclick.net/gampad/ad?iu=/12345/adunit&sz=728x90&rdp=1&c=12345
Google Mobile Ads SDK
如要進一步瞭解 Google Mobile Ads SDK,請參閱應用程式開發人員網站上的內容。
- AdMob:iOS GMA SDK、Android GMA SDK
- Ad Manager:iOS GMA SDK、Android GMA SDK
Google 互動式媒體廣告 SDK (影片廣告)
對於影片請求,您可以指定 Google 將影片內容視為「受限的資料處理」。方法是使用手動建構的主影片廣告代碼 (僅限 Ad Manager),或採用任一種特定平台專用的 IMA SDK (HTML 5 IMA SDK、iOS IMA SDK、Android IMA SDK、Google Cast IMA SDK)。
如果您的影片播放器使用 Ad Manager 的「動態廣告插播」功能,便可同時透過隨選影片或直播請求加進 rdp=1 參數,藉此將該參數傳遞給所有內含的廣告請求 (DAI HTML5 SDK、DAI Cast SDK、DAI iOS SDK、DAI Android SDK、DAI Roku SDK 和 DAI tvOS SDK)。
舊版 Google 發布商廣告代碼
其他類型的 Google Ads 代碼 (例如舊版 GAM 代碼、GUT 代碼以及 AdSense 或 Ad Exchange 同步廣告代碼 (show_ads.js
)) 不支援「受限的資料處理」廣告請求,我們建議您改用提供個人化廣告及「受限的資料處理」模式完整放送功能的廣告代碼。
AdSense 搜尋廣告
根據預設,傳送給 Google 的廣告請求不會限制資料處理方式且會放送個人化廣告,同時將根據使用者的搜尋查詢及個別搜尋使用者的記錄來選擇廣告。當您啟用「受限的資料處理」時,Google 會限制資料的使用方式,而且只會放送非個人化廣告。
您可以依請求啟用「受限的資料處理」(請參閱以下說明),或請客戶經理停用特定資源的個人化設定。
- 如果是「自訂搜尋廣告 - 網站廣告代碼」,請將下列文字加進自訂搜尋廣告代碼中的
pageOptions
:personalizedAds: false,
- AdMob 代碼:
builder.setAdvancedOptionValue("csa_personalizedAds", "false");
- iOS 代碼:
[request setAdvancedOptionValue:@"false" forKey:@"personalizedAds"];
上述方法將針對個別請求觸發「受限的資料處理」並放送非個人化廣告。此為無狀態參數,如果您沒有在後續的請求中為使用者設定這個參數,行為會恢復為預設狀態 (也就是請求個人化廣告)。
Accelerated Mobile Pages (AMP)
<amp-ad type=”doubleclick”>
和 <amp-ad type=”adsense”>
請求廣告的 AMP 網頁各自適用的設定。如果是來自 AMP 網頁的廣告請求,發布商可以選擇為所有符合資格的美國各州使用者啟用「受限的資料處理」,或按照下列指示停用個人化,以選擇「受限的資料處理」套用對象。如果發布商想啟用「受限的資料處理」,應使用現有的停用個人化設定。這些做法可相互替換,請見本文的操作示範。
針對適用「受限的資料處理」模式的美國各州境內使用者,請求非個人化廣告
如果您採用的是 AMP AdSense 標記,或是沒有即時設定 (RTC) 的 AMP Doubleclick,可直接在 Google Ad Manager 或 AdSense 的 UI 中啟用「受限的資料處理」模式,不需要修改 AMP 網頁。
若您的 AMP 廣告代碼「目前」使用即時設定 (RTC),則只有在已提供同意聲明或不需要同意聲明時,才會傳送 RTC 請求 (注意:無論同意聲明狀態為何,您都可以允許傳送特定 RTC 呼叫)。針對會看到非個人化廣告的使用者 (也就是符合資格且位在美國境內的客群),您可以使用下列元件和設定 (amp-geo
和 amp-consent
),避免為這些使用者送出 RTC 請求:
<!-- 設定 amp-geo 元件來偵測美國境內使用者。amp-geo 目前的地理區域偵測功能僅可偵測國家/地區,但近期將推出偵測美國各州的功能。當 amp-geo 無法判斷國家/地區時,請務必處理「unknown」案例,並將「unknown」列進至少一個群組 -->
<amp-geo layout=nodisplay>
<script type="application/json">
{
"ISOCountryGroups": {
"us": ["us"],
"eea": ["preset-eea", “unknown”]
}
}
</script>
</amp-geo>
<!-- 設定 amp-consent 元件來封鎖請求並收集使用者同意聲明。我們會在隨後將其設為 auto-rejected,因此實際上不會顯示同意聲明提示。如此將預防 RTC 發出呼叫,並指示 Ad Manager/AdSense 放送非個人化廣告。-->
<amp-consent layout="nodisplay" id="consent-element">
<script type="application/json">
{
“consentInstanceId”: “my_consent”,
“consentRequire”: false,
“geoOverride”: {
“us”: {
“consentRequired”: “remote”,
“checkConsentHref”: “https://your-endpoint”
}
}
</script>
</amp-consent>
由於 amp-geo
目前無法偵測出適用「受限的資料處理」模式的美國各州,因此您需要使用 checkConsentHref
設定提供端點,告知 AMP 是否需要向目前的使用者取得同意聲明。AMP 會預期端點傳回 JSON 物件。若想進一步瞭解端點回應,請參閱 AMP 網站文件。
為協助不適合設定端點的發布商,AMP 團隊正在開發一項近期即將推出的功能,用來偵測適用「受限的資料處理」模式的美國各州境內使用者。在這項功能上線前,建議發布商暫時對所有的美國使用者套用同意聲明設定。amp-consent
設定看起來像這樣:
<!-- 設定 amp-consent 元件來封鎖廣告請求,並向美國境內所有的使用者徵求同意聲明 -->
<amp-consent layout="nodisplay" id="consent-element">
<script type="application/json">
{
“consentInstanceId”: “my_consent”,
“consentRequire”: false,
“geoOverride”: {
“us”: {
“consentRequired”: “true”
}
}
</script>
</amp-consent>
您必須在網頁內既有的所有 amp-ad
元件中,加進 data-block-on-consent
屬性,如下所示:_auto_reject
用來指示廣告不要等候提示,直接改為放送非個人化廣告。
<!-- 最後將廣告代碼設為自動拒絕提供同意聲明 -->
<amp-ad data-block-on-consent="_auto_reject"
width=320 height=50
type="doubleclick"
data-slot="/4119129/mobile_ad_banner">
</amp-ad>
根據同意聲明放送個人化/非個人化廣告
由於 AMP 不允許使用自訂 JavaScript,因此您需要設定 amp-consent
元件,以及 data-block-on-consent
和 data-npa-on-unknown-consent
屬性,指明請求的是個人化或非個人化廣告。假設您設定了 amp-consent
元件,並使用 data-block-on-consent
將這個元件連至網頁上所有的 <amp-ad>
代碼:
- 如果使用者正面回應
amp-consent
元件 (接受同意聲明提示),系統將如常請求廣告。 - 如果使用者負面回應
amp-consent
元件 (拒絕同意聲明提示),系統將請求非個人化廣告。 - 如果使用者對 amp-consent 的回應不明 (關閉同意聲明提示)
- 根據預設,系統完全不會傳送任何廣告請求。
- 如果
data-npa-on-unknown-consent
設為true
,系統將請求非個人化廣告。
- 若將
amp-geo
元件設為不向特定地理位置中的使用者顯示同意聲明提示,系統會如常傳送請求。
如果 <amp-ad>
代碼不使用 data-block-on-consent
,或是 amp-consent
元件的設定有誤,系統會如常傳送請求。
請看下列設定範例,瞭解如何在適用「受限的資料處理」模式的美國各州,向境內使用者顯示同意聲明提示 (系統後續行為則如前述範例所示):
<!-- 設定 amp-geo 元件來偵測美國境內使用者。amp-geo 目前的地理區域偵測功能僅可偵測國家/地區,但近期將推出偵測美國各州的功能。當 amp-geo 無法判斷國家/地區時,請務必處理「unknown」案例,並將「unknown」列進至少一個群組中 -->
<amp-geo layout=nodisplay>
<script type="application/json">
{
"ISOCountryGroups": {
"us": ["us"],
"unknown": ["unknown"]
}
}
</script>
</amp-geo>
<!--替位於美國的使用者設定同意聲明 -->
<amp-consent layout="nodisplay" id="consent-element">
<script type="application/json">
{
“consentInstanceId” : “my_consent”,
“consentRequired”: false,
“geoOverride”: {
“us”: {
“consentRequired”: “true”,
“promptUI”: “myConsentFlow”
}
}
}
</script>
<div id=”myConsentFlow”>...</div>
</amp-consent>
<!-- 最後設定廣告代碼,並將代碼設為在必要時等候使用者提供同意聲明;若最終取得的同意聲明回應是「unknown」,則請求非個人化廣告 -->
<amp-ad data-block-on-consent
data-npa-on-unknown-consent=true
width=320 height=50
type="doubleclick"
data-slot="/4119129/mobile_ad_banner">
</amp-ad>
您可以透過 checkConsentHref
進行設定,使網頁傳送 CORS POST 要求給您的端點,選擇性向使用者顯示同意聲明提示,詳情請參閱 amp-consent 說明文件。