Show Menu
主題×

客戶 ID 和驗證狀態

除了 Experience Cloud 訪客 ID 之外,您還可以將其他客戶 ID 和驗證狀態與每個訪客建立關聯。

驗證狀態

setCustomerIDs
方法接受同一位訪客擁有多個客戶 ID。這可幫助您識別或鎖定不同裝置上的個別使用者。例如,您可以將這些 ID 上傳至 作為 客戶屬性Experience Cloud,並在不同解決方案中使用此資料。
客戶屬性與核心服務功能需要
setCustomerIDs
(客戶 ID 同步化)。同步客戶 ID 是 Analytics 支援的選用身分識別方法。Target 需要客戶屬性的
Visitor.AuthState.AUTHENTICATED
才能運作。如需範例,請參閱 核心服務 - 如何啟用您的解決方案
從 Experience Cloud Identity 服務 1.5 版以後的版本開始,
setCustomerIDs
即包括可選用的
AuthState
物件。
AuthState
會根據訪客的驗證狀態 (例如,登入、登出) 來識別訪客。您可使用表格中列出的狀態值來設定驗證狀態。驗證狀態會以整數傳回。
驗證狀態
狀態整數
使用者狀態
Visitor.AuthState.UNKNOWN
0
未知或從未驗證
當訪客 ID 未使用
AuthState
,或未在每個頁面或應用程式內容中明確設定 AuthState 時,依預設會套用「未知」。
Visitor.AuthState.AUTHENTICATED
1
驗證特殊例項、頁面,或應用程式。
注意: 為了正常運作,
Target
的客戶屬性需要此狀態。
Visitor.AuthState.LOGGED_OUT
2
登出。

驗證狀態的使用案例

您可以視使用者在網頁屬性上執行的動作,以及使用者是否通過驗證而定,來指派驗證狀態給使用者。請查看下表的一些範例:
驗證狀態
使用案例
Visitor.AuthState.UNKNOWN
此狀態可用於如下案例:
  • 讀取電子郵件 (此動作可能表示讀者為目標收件者,但電子郵件可能也會轉寄)。
  • 從電子郵件至登陸頁面依序點擊。
Visitor.AuthState.AUTHENTICATED
使用者目前是以您網站或應用程式上使用中的工作階段驗證。
Visitor.AuthState.LOGGED_OUT
使用者通過驗證,但主動登出。使用者有意且確定中斷驗證狀態的連結。使用者不希望具有驗證身分。

設定客戶 ID 與驗證狀態

客戶 ID 可包括 ID 與驗證狀態的組合,如下列範例所示。
  • ID 區分大小寫。
  • 請僅用未經編碼的值當成 ID。
  • 客戶 ID 與驗證狀態未儲存在訪客 ID Cookie 中。每個頁面或應用程式內容都必須設定這兩項。
  • 您不應在客戶 ID 中加入任何個人識別資訊 (PII)。如果您要使用 PII 來識別訪客 (例如電子郵件地址),建議您改為儲存經過雜湊或加密處理的資訊。ECID 程式庫支援使用雜湊處理使用者識別碼。請參閱 setCustomerIDs 的 SHA256 雜湊支援
// Single ID with a single authentication state visitor.setCustomerIDs({ "userid":{ "id":"67312378756723456", "authState":Visitor.AuthState.AUTHENTICATED } }); /* Multiple IDs with only the first ID explicitly assigned an authentication state. The second ID is not explicitly assigned an authentication state and is implicitly assigned Visitor.AuthState.Unknown by default. */ visitor.setCustomerIDs({ "userid":{ "id":"67312378756723456", "authState":Visitor.AuthState.AUTHENTICATED }, "dpuuid":"550e8400-e29b-41d4-a716-446655440000" }); // Multiple IDs with identical authentication states visitor.setCustomerIDs({ "userid":{ "id":"67312378756723456", "authState":Visitor.AuthState.AUTHENTICATED }, "dpuuid":{ "id":"550e8400-e29b-41d4-a716-446655440000", "authState":Visitor.AuthState.AUTHENTICATED } }); // Multiple IDs with different authentication states visitor.setCustomerIDs({ "userid":{ "id":"67312378756723456", "authState":Visitor.AuthState.AUTHENTICATED }, "dpuuid":{ "id":"550e8400-e29b-41d4-a716-446655440000", "authState":Visitor.AuthState.LOGGED_OUT } });

傳回客戶 ID 與驗證狀態

使用
getCustomerIDs
以傳回客戶 ID 與相關的驗證狀態。此方法會以整數傳回訪客的驗證狀態。
語法
getCustomerIDs
會使用下列語法傳回資料。
{ [customerIDType1]:{ "id":[customerID1], "authState":[authState1] }, [customerIDType2]:{ "id":[customerID2], "authState":[authState2] } ... }
範例
傳回的客戶 ID 與驗證狀態資料看起來類似以下範例所示。
Object customerIDs = visitor.getCustomerIDs(); // No setCustomerIDs call on this instance {} // setCustomerIDs call on this instance with {"userid":{"id":"67312378756723456"}} { "userid":{ "id":"67312378756723456", "authState":0 } } // setCustomerIDs call on this instance with {"userid":{"id":"67312378756723456","authState":Visitor.AuthState.AUTHENTICATED}} { "userid":{ "id":"67312378756723456", "authState":1 } } // setCustomerIDs call on this instance with {"userid":{"authState":Visitor.AuthState.LOGGED_OUT}} { "userid":{ "authState":2 } } // setCustomerIDs call on this instance with {"userid":{"authState":Visitor.AuthState.LOGGED_OUT},"dpuuid":{"id":"550e8400-e29b-41d4-a716-446655440000"}} { "userid":{ "authState":2 }, "dpuuid":{ "id":"550e8400-e29b-41d4-a716-446655440000", "authState":0 } }

SDK 支援

Experience Cloud ID 服務支援 Android 和 iOS SDK 程式碼中的客戶 ID 與驗證狀態。請參閱下列程式碼程式庫:

通知 Analytics 與 Audience Manager 客戶

如果您要將宣告的 ID 傳遞至 Audience Manager,
userid
物件必須符合與資料來源相關的整合程式碼。如需詳細資訊,請參閱 設定合併規則程式碼 文件中的訪客 ID 服務章節。