Transparency & Consent Framework (TCF)如Interactive Advertising Bureau (IAB)所概述,是開放標準的技術架構,旨在讓組織能依照歐盟的General Data Protection Regulation (GDPR),取得、記錄及更新消費者對處理其個人資料的同意。 框架的第二次迭代TCF 2.0為消費者提供或拒絕同意提供了更大的靈活性,包括供應商是否和如何使用資料處理的某些功能,如精確的地理位置。
有關TCF 2.0的更多資訊,請參閱IAB歐洲網站,包括支援材料和技術規格。
Adobe Experience Platform是已註冊IAB TCF 2.0廠商清單的一部分,位於ID 565下。 為符合TCF 2.0要求,Platform可讓您收集客戶同意資料,並將其整合至您儲存的客戶設定檔中。 然後,可根據設定檔的使用案例,將此同意資料納入匯出的受眾區段中。
Platform僅能符合TCF 2.0版(或更新版本)。 不支援舊版TCF。
本檔案概述如何設定您的資料操作和設定檔結構,以接受CMP產生的客戶同意資料,以及Platform在匯出區段時如何傳達使用者同意選擇。
若要遵循本指南,您必須使用已整合且符合IAB TCF的同意管理平台(CMP),商業版或自有版皆可。 如需詳細資訊,請參閱符合CMP的清單。
如果CMP的ID無效,Platform會持續依原樣處理您的資料。 若要強制執行TCF 2.0,您必須先確認CMP具有已向IAB TCF 2.0註冊的有效ID,才能將資料傳送至Platform。
此外,本指南也需要妥善了解下列平台服務:
除了上述的Platform服務,您也應該熟悉destinations及其在Platform生態系統中的角色。
以下幾節說明在正確設定系統後,如何收集和執行同意資料。
Platform可讓您透過下列程式收集客戶同意資料:
除了CMP同意變更鈎點所觸發的SDK命令外,同意資料也可透過任何客戶產生的XDM資料流入Experience Platform,這些資料會直接上傳至啟用Profile的資料集。
由Adobe Audience Manager共用給Platform的任何區段(透過Audience Manager來源連接器或其他方式)也可能包含同意資料,前提是已透過Experience Cloud Identity Service將適當欄位套用至這些區段。 如需在Audience Manager中收集同意資料的詳細資訊,請參閱適用於IAB TCF🔗的Adobe Audience Manager外掛程式上的檔案。
成功擷取TCF同意資料後,下列程式就會在下游Platform服務中進行:
本檔案的其餘章節提供如何設定Platform和您的資料作業,以符合上述收集和實作需求的指引。
由於每個CMP系統都是獨一無二的,因此您必須決定讓客戶在與您的服務互動時提供同意的最佳方式。 達成此目的的常見方式是使用類似下列範例的Cookie同意對話方塊:
此對話方塊必須允許客戶選擇加入或退出下列項目:
同意選項 | 說明 |
---|---|
用途 | 用途定義品牌可針對哪些廣告技術用途使用客戶資料。 若要讓Platform處理客戶ID,必須選擇加入下列用途:
|
供應商權限 | 除了廣告技術用途以外,對話方塊也必須允許客戶選擇加入或退出讓特定廠商使用其資料,包括Adobe Experience Platform(565)。 |
無論您使用何種方法來收集資料,目標都是根據客戶選擇的同意選項(稱為同意字串)產生字串值。
在TCF規格中,同意字串可用來針對由政策和廠商所定義的特定行銷用途,編碼有關客戶同意設定的相關詳細資訊。 Platform會利用這些字串來儲存每個客戶的同意設定,因此每次這些設定變更時都必須產生新的同意字串。
同意字串只能由向IAB TCF註冊的CMP建立。 如需如何使用您的特定CMP產生同意字串的詳細資訊,請參閱IAB TCF GitHub存放庫中的同意字串格式指南。
客戶同意資料必須傳送至其結構包含TCF同意欄位的資料集。 請參閱建立資料集以擷取TCF 2.0同意的教學課程,了解如何先建立必要的設定檔資料集(以及選用的「體驗事件」資料集),再繼續參閱本指南。
建立啟用Profile的資料集以收集同意資料後,您必須確定您的合併原則已設定為一律在客戶設定檔中加入TCF同意欄位。 這需要設定資料集優先順序,讓同意資料集優先順序高於其他可能發生衝突的資料集。
有關如何使用合併策略的詳細資訊,請參閱合併策略概述。 設定合併原則時,您必須確保區段包含XDM隱私權結構欄位群組提供的所有必要同意屬性,如資料集準備指南所述。
若要直接在Adobe Experience Platform中處理同意資料,必須使用Experience PlatformWeb SDK。 Experience Cloud Identity Service 目前不支援。
Experience Cloud Identity Service 不過,Adobe Audience Manager中的同意處理仍受支援,且遵循TCF 2.0僅需要將程式庫更新至 5.0版。
將CMP設定為產生同意字串後,您必須整合Experience PlatformWeb SDK以收集這些字串,並將其傳送至Platform。 Platform SDK提供兩個命令,可用來將TCF同意資料傳送至Platform(相關說明請見下方子節),當客戶首次提供同意資訊時,以及隨後同意變更時,也應使用。
SDK不會與任何現成可用的CMP進行介面。您可自行決定如何將SDK整合至您的網站、接聽CMP中的同意變更,並呼叫適當的命令。
若要讓SDK將資料傳送至Experience Platform,您必須先在資料收集UI中為Platform建立新的資料流。 SDK檔案中提供如何建立新資料流的特定步驟。
為資料流提供唯一名稱后,請選取Adobe Experience Platform旁的切換按鈕。 接下來,使用下列值來完成表單的其餘部分:
資料流欄位 | 值 |
---|---|
沙箱 | 平台sandbox的名稱,其中包含設定資料流所需的串流連線和資料集。 |
串流入口 | 有效的串流連線,用於Experience Platform。 如果您沒有現有的串流入口,請參閱有關建立串流連接的教程。 |
事件資料集 | 選取在上一步驟中建立的XDM ExperienceEvent資料集。 如果您在此資料集的結構中包含 IAB TCF 2.0同意欄位群組,則可使用sendEvent 命令追蹤隨時間變更的事件,將該資料儲存在此資料集中。 請記得,儲存在此資料集中的同意值是用於自動執行工作流程的not。 |
設定檔資料集 | 選取在上一步驟中建立的XDM Individual Profile資料集。 使用setConsent 命令回應CMP同意變更鈎點時,收集的資料會儲存在此資料集中。 由於此資料集已啟用設定檔,因此儲存在此資料集中的同意值會在自動執行工作流程期間執行。 |
完成後,在螢幕底部選擇Save,然後繼續執行任何其他提示以完成配置。
建立前一節所述的資料流後,您就可以開始使用SDK命令將同意資料傳送至Platform。 以下各節提供如何在不同案例中使用各個SDK命令的範例。
如需所有Platform SDK命令的常見語法簡介,請參閱executing commands的相關檔案。
許多CMP提供可接聽同意變更事件的現成可用鈎點。 發生這些事件時,您可以使用setConsent
命令來更新該客戶的同意資料。
setConsent
命令需要兩個參數:(1)指出命令類型(在此例中為「setConsent」)的字串,以及(2)包含consent
陣列的裝載,該陣列必須包含至少一個提供必要同意欄位的物件,如下所示:
alloy("setConsent", {
consent: [{
standard: "IAB TCF",
version: "2.0",
value: "CLcVDxRMWfGmWAVAHCENAXCkAKDAADnAABRgA5mdfCKZuYJez-NQm0TBMYA4oCAAGQYIAAAAAAEAIAEgAA.argAC0gAAAAAAAAAAAA",
gdprApplies: "true"
}]
});
裝載屬性 | 說明 |
---|---|
standard |
使用的同意標準。 若要處理TCF 2.0同意,此值必須設為IAB 。 |
version |
standard 下所示的同意標準版本號。 若要處理TCF 2.0同意,此值必須設為2.0 。 |
value |
CMP產生的base-64編碼同意字串。 |
gdprApplies |
指出GDPR是否適用於目前登入的客戶的布林值。 為了為此客戶強制執行TCF 2.0,必須將值設為true 。 若未定義,則預設為true 。 |
setConsent
命令應作為CMP掛接的一部分使用,該掛接會檢測同意設定中的更改。 以下JavaScript提供了如何將setConsent
命令用於OneTrust的OnConsentChanged
掛接的示例:
OneTrust.OnConsentChanged(function () {
// Retrieve the TCF 2.0 consent data generated by the CMP, and pass it to Alloy.
__tcfapi("getTCData", 2, function (data, success) {
if (success) {
var tcString = data.tcString;
var gdpr = data.gdprApplies;
alloy("setConsent", {
consent: [{
standard: "IAB TCF",
version: "2.0",
value: tcString,
gdprApplies: gdpr
}]
});
}
});
});
您也可以使用sendEvent
命令,針對Platform中觸發的每個事件收集TCF 2.0同意資料。
若要使用此方法,您必須將「體驗事件隱私權」欄位群組新增至已啟用Profile的XDM ExperienceEvent架構。 請參閱資料集準備指南中的更新ExperienceEvent結構一節,了解如何設定此架構的步驟。
sendEvent
命令應作為回呼用於網站上適當的事件監聽器。 命令需要兩個參數:(1)指出命令類型(在此例中為sendEvent
)的字串,以及(2)包含xdm
物件的裝載,該物件提供必要的同意欄位作為JSON:
alloy("sendEvent", {
xdm: {
"consentStrings": [{
"consentStandard": "IAB TCF",
"consentStandardVersion": "2.0",
"consentStringValue": "CLcVDxRMWfGmWAVAHCENAXCkAKDAADnAABRgA5mdfCKZuYJez-NQm0TBMYA4oCAAGQYIAAAAAAEAIAEgAA.argAC0gAAAAAAAAAAAA",
"gdprApplies": true
}]
}
});
裝載屬性 | 說明 |
---|---|
xdm.consentStrings |
必須至少包含一個物件,且提供必要同意欄位的陣列。 |
consentStandard |
使用的同意標準。 若要處理TCF 2.0同意,此值必須設為IAB 。 |
consentStandardVersion |
standard 下所示的同意標準版本號。 若要處理TCF 2.0同意,此值必須設為2.0 。 |
consentStringValue |
CMP產生的base-64編碼同意字串。 |
gdprApplies |
指出GDPR是否適用於目前登入的客戶的布林值。 為了為此客戶強制執行TCF 2.0,必須將值設為true 。 若未定義,則預設為true 。 |
所有Platform SDK命令都返回指示調用是成功還是失敗的承諾。 然後,您可以將這些回應用於其他邏輯,例如向客戶顯示確認訊息。 如需特定範例,請參閱執行SDK命令指南中關於處理成功或失敗的一節。
開始匯出區段之前,您必須確定區段包含所有必要的同意欄位。 有關詳細資訊,請參閱配置合併策略的部分。
收集客戶同意資料並建立包含必要同意屬性的對象區段後,您就可以在將這些區段匯出至下游目的地時強制執行TCF 2.0法規遵循。
如果對一組客戶設定檔將同意設定gdprApplies
設為true
,則會根據每個設定檔的TCF同意偏好設定,篩選從這些設定檔匯出至下游目的地的任何資料。 在匯出程式期間,會略過任何不符合必要同意偏好設定的設定檔。
客戶必須同意下列用途(如TCF 2.0原則所概述),才能將其設定檔納入匯出至目的地的區段中:
TCF 2.0也要求資料來源必須先檢查目的地的廠商權限,才能將資料傳送至該目的地。 因此,Platform會先檢查目標的廠商權限是否已針對叢集中的所有ID選擇加入,再納入系結至該目標的資料。
任何與Adobe Audience Manager共用的區段,都會包含與Platform相同的TCF 2.0同意值。 由於Audience Manager與Platform(565)共用相同的供應商ID,因此需要相同的用途和供應商權限。 如需詳細資訊,請參閱適用於IAB TCF🔗的Adobe Audience Manager外掛程式的相關檔案。
設定TCF 2.0實作並將區段匯出至目的地後,任何不符合同意要求的資料都不會匯出。 不過,若要查看匯出期間是否篩選了正確的客戶設定檔,您必須手動檢查目的地上的資料存放區,以查看是否正確執行同意。
請務必注意,如果叢集中有多個ID,且TCF 2.0適用,則即使單一ID未包含正確用途和廠商權限,也會排除整個叢集。
本檔案說明如何設定Platform資料操作以符合TCF 2.0所概述的業務義務。如需Platform隱私權相關功能的詳細資訊,請參閱控管、隱私權及安全性的概觀。