瞭解如何使用權限政策控管目標對像管理功能,或是透過設定 .well-known 權限網址的方式,委派給第三方。
joinAdInterestGroup()
的呼叫背景資訊來源必須與興趣群組擁有者的來源相符,因此除非興趣群組擁有者的來源與目前文件的來源相同 (例如擁有興趣群組的網站),否則必須透過 iframe 呼叫 joinAdInterestGroup()
(例如來自需求端平台)。
「joinAdInterestGroup()
」要求取得以下權限:
- 使用者造訪的網站
- 興趣群組擁有者
也就是說,如果沒有 dsp.example.com
授予權限,malicious.example
就無法為 dsp.example.com
擁有的興趣群組呼叫 joinAdInterestGroup()
。
造訪網站的權限
您可以授予相同來源或跨來源的權限。
根據預設,系統會從已造訪網站的相同來源發出 joinAdInterestGroup()
呼叫 (也就是與目前頁面的頂層頁框相同)。網站可以使用 join-ad-interest-group
權限政策標頭來停用 joinAdInterestGroup()
呼叫。
只有在造訪的網站設有允許從跨來源 iframe 呼叫 joinAdInterestGroup()
的權限政策時,才能呼叫 joinAdInterestGroup()
跨來源 (與目前網頁不同的來源)。
興趣群組擁有者的權限
系統會從與興趣群組擁有者相同的 iframe 呼叫 joinAdInterestGroup()
,以隱含方式授予興趣群組擁有者權限。舉例來說,dsp.example.com
iframe 可以針對 dsp.example.com
擁有的興趣群組呼叫 joinAdInterestGroup()
。
基本上,joinAdInterestGroup()
可以在擁有者網域的網頁或 iframe 中執行,或委派給使用 .well-known
網址上的清單提供的其他網域。
如果某個頁框前往其中一個網域,為有其他擁有者的興趣群組呼叫 joinAdInterestGroup()
、leaveAdInterestGroup()
或 clearOriginJoinedAdInterestGroups()
,瀏覽器會擷取網址 https://owner.domain/.well-known/interest-group/permissions/?origin=frame.origin
,其中 owner.domain
是該興趣群組的網域,frame.origin
則是頁框的來源。擷取作業會使用省略憑證模式,透過叫用方法的影格的網路分區索引鍵。為避免透過傳回的 Promise 洩漏跨來源資料,擷取作業會使用 cors 模式。擷取的回應應具有 JSON MIME 類型,並採用以下格式:
{ "joinAdInterestGroup": true/false,
"leaveAdInterestGroup": true/false
}
指出路徑來源是否有權加入或離開要求傳送目的地的網域擁有的興趣群組。系統會將缺少的權限假設為否。由於呼叫 lifetimeMs
為 0 的 navigator.joinAdInterestGroup()
實際上會退出興趣群組,因此 joinAdInterestGroup: true
也允許來源呼叫 navigator.leaveAdInterestGroup()
,即使缺少 leaveadInterestGroup
或將其設為 false 也一樣。請注意,leaveAdInterestGroup()
和 clearOriginJoinedAdInterestGroups()
都檢查 leaveAdInterestGroup
權限。