Shared Storage API 可讓網站儲存及存取頂層網站未隔離的資料。這樣一來,我們就能在尊重使用者隱私的情況下,啟用並簡化跨網站使用情境。
雖然 Chrome 已提供分割儲存空間,並轉向提升使用者對第三方 Cookie 的選擇權的新體驗,但仍有許多合法的用途需要使用未分割的儲存空間,如果沒有新的網路 API 協助,這些用途就無法運作。舉例來說,內容製作者可能想評估不同網站的內容觸及數,而不必仰賴跨網站 ID。Shared Storage API 提供更私密的機制,可在各網站上儲存及存取未分區的資料,滿足這項需求。
什麼是 Shared Storage API?
Shared Storage API 是一種通用儲存空間設施,旨在支援可保留隱私權的跨網站用途。與 localStorage 和 sessionStorage API 相似,Shared Storage 是一項鍵/值存放區,可隨時寫入資料。與其他 Web Storage API 不同,Shared Storage 資料可在不同頂層網站間共用;不過,Shared Storage 資料只能從安全環境讀取,並使用受限制的 Output API 輸出。
在上圖中,shoes.example
網站可嵌入其他發布者網站 (例如 news.example
),並且仍可存取相同資料。
這項共用儲存空間功能可啟用跨網站功能,同時透過防止追蹤個別網站訪客和限制資料存取權,提升使用者隱私。資料只能在安全環境中存取,且輸出功能有限 (worklet)。
Shared Storage 是少數 Output API 的基礎儲存空間基礎架構。使用 Shared Storage 資料的唯一方法是透過 Output API。輸出 API 如下:
為什麼需要共用儲存空間?
Shared Storage API 是一種彈性的儲存機制,網頁開發人員可搭配輸出 API 使用,以因應多種用途,包括取代第三方 Cookie 的幾種現有用途。進一步瞭解輸出 API 的潛在用途:選取網址和私人匯總。
貴公司是否正在尋找尚未解決的跨網站儲存空間解決方案?您可以分享用途,並在開放原始碼 Shared Storage GitHub 存放區中建立問題。
與共用儲存空間相容的輸出 API 和用途
Output API | 用途 | 說明 |
---|---|---|
選取網址 | 廣告素材輪播方式 | 您可以儲存廣告素材 ID、觀看次數和使用者互動等資料,藉此決定使用者在不同網站上看到哪些廣告素材。這樣一來,您就能平衡觀看次數,避免特定內容過度飽和,進而避免使用者體驗變差。 |
選取網址 | 執行 A/B 版本測試 | A/B 版本測試會比較兩個以上的設定版本,進而判斷哪個版本的成效較佳。您可以將使用者指派給實驗群組,然後將該群組儲存在共用儲存空間中,以便跨網站存取。 |
選取網址 | 為已知客戶提供客製化使用者體驗 | 您可以根據使用者的註冊狀態或其他使用者狀態,分享自訂內容和行動號召。 |
選取網址、 私人匯總 | 反濫用緩解措施 | 反濫用、反詐欺和網路安全組織經常使用專屬技術,偵測惡意使用者,無論是自動化機器人或真人,都可能會造成危害。在這個用途中,您可以測試許多不同的策略,例如使用 Select URL API 對使用者可信度評分進行編碼,或是使用 Private Aggregation API 建構異常偵測資料集。 |
私人匯總 | 評估不重複觸及 | 許多內容製作者和廣告客戶經常想知道有多少不重複使用者觀看他們的內容。您可以使用共用儲存空間,回報使用者首次看到廣告、嵌入的影片或發布內容。您可以避免重複計算同一使用者在不同網站上的觸及數,並產生匯總雜訊報表,以便估算不重複內容觸及數。 |
私人匯總 | 評估使用者客層 | 內容製作者都很想瞭解觀眾的客層。您可以使用共用儲存空間,在第一方網站上擷取使用者客層資料,並利用匯總報表,在其他各種平台 (例如嵌入式內容) 上分析這類資訊。 |
私人匯總 | 評估 N 次以上頻率觸及數 | 有時稱為「有效展示頻率」,使用者必須觀看一定次數的廣告,才會認出或回想特定內容 (通常是在廣告觀看的情況下)。您可以使用 Shared Storage 建立報表,針對至少看過 K 次內容的不重複使用者進行分析。 |
共用儲存空間如何運作?
共用儲存空間可讓您根據跨網站資料做出明智的決策,無須與嵌入網站分享使用者資訊 (例如瀏覽器記錄或其他個人詳細資料),也不必將資料外洩至您自己的伺服器。
您隨時可以寫入共用儲存空間,但只能在安全環境 (稱為 worklet) 中讀取共用儲存空間值。
共用儲存空間小程式可讓您新增業務邏輯,然後讀取及處理共用儲存空間中的值,而無須直接將確切值傳回給小程式呼叫端。您可以使用私人匯總或選取網址輸出 API,從工作區塊中擷取資訊。隨著新用途的回報,可能會提供其他輸出 API。
API 狀態
Shared Storage API 已正式發布。請按照註冊 Privacy Sandbox的操作說明,使用 API 或啟用本機開發功能。
Proposal | Status |
---|---|
Allow writing from response headers Explainer GitHub Issue |
Available in M124. Can be manually enabled in M119-M123 |
Debugging Shared Storage worklets with DevTools Section |
Available in M120 |
Update Shared Storage data storage limit to 5MB Explainer |
Available in M124 |
createWorklet() to create cross-origin worklets without an iframe |
Available in M125 |
Allow cross-origin script in addModule() , and align createWorklet() to match the behavior |
Available in M130 |
Custom data origin support in createWorklet() Explainer |
Expected in Q1 2025 |
Allow Shared Storage worklet to read interest groups Explainer |
Expected in Q1 2025 |
Debugging Shared Storage worklets with DevTools Explainer GitHub issue |
Expected in Q1 2025 |
互動並分享意見回饋
請注意,Shared Storage API 提案仍在積極討論和開發中,因此可能會有變動。
我們很期待聽到您對 Shared Storage API 的想法。
掌握最新消息
- 電子報:訂閱我們的電子報,即可取得與 Shared Storage API 相關的最新消息和公告。
需要協助嗎?
- 開發人員支援:在 Privacy Sandbox 開發人員支援存放區中與其他開發人員互動,並取得問題解答。