Saying goodbye to third-party cookies in 2024 title. A vibrant gradient behind artwork of a cookie and a web browser.

2024 年告別第三方 Cookie

閱讀時間 8 分鐘

2023 年即將結束之際,Web 隱私迎來了一個好訊息:Chrome 宣佈將於 2024 年與 Firefox 和 Safari 一同棄用第三方 Cookie。從 2024 年第一季度開始,將有 1% 的使用者受到影響,以便進行測試,然後逐步擴大範圍。

本文將解釋第三方 Cookie 背後存在的問題、已經採取了哪些措施來緩解這些問題、Chrome 計劃從 2024 年第一季度開始停用第三方 Cookie,以及這一切對 Web 開發人員及其產品使用者會產生何種影響。

Cookie 的問題

Cookie 在 Web 上已經存在了很長時間。簡而言之,其原理是:當用戶透過 `Set-Cookie` 響應頭請求資源時,網站就可以在使用者的瀏覽器上設定一個 Cookie。這個 Cookie 可以包含網站所有者希望的任何字串資料,通常用於為網站提供狀態。

例如,Cookie 可以讓網站檢索使用者之前是否登入、使用者將什麼新增到購物車、使用者的偏好設定和其他個性化設定、儲存的遊戲狀態等資訊。

注意: Cookie 曾經是儲存客戶端網站資料的主要方法,儘管現在存在如 Web StorageIndexedDB 等更有用的技術。

上述用例都可以透過為與瀏覽器中載入的 URL 存在於同一域下的文件設定的 Cookie 來實現。這些被稱為第一方 Cookie

當為與嵌入文件不同域的元件(例如圖片或其他透過 `<iframe>` 嵌入的文件)設定 Cookie 時,可能會出現問題。這些跨站 Cookie 通常被稱為第三方 Cookie — 但無論您是否擁有所有相關網站,其行為和潛在問題都是相同的。

第三方元件可以在其 Cookie 中儲存來自任何以及所有嵌入它們的文件的資訊。然後,原始第三方域可以訪問所有這些第三方 Cookie,從而聚合來自每個 Cookie 的資訊。乍聽之下,這似乎沒什麼大不了的,第三方 Cookie 也有許多合法用途 — 例如,一個公司可能希望在其擁有的、位於不同域的多個網站之間共享使用者登入狀態和配置檔案資訊,或記錄其不同屬性的分析資料,以調查使用者旅程並構建更易於使用的體驗。廣告技術公司可能希望透過使用者訪問的網站來推斷使用者的興趣,以便為他們提供更相關的廣告。

然而,在最壞的情況下,第三方 Cookie 會被用來跟蹤使用者在網路上的活動,構建一個詳細的使用者畫像,其中不僅包含興趣,還可能包含性別、性取向、宗教、政治傾向等深度個人資訊。這些資訊可能被用來構建令人毛骨悚然、侵入性的線上體驗,並出售給其他第三方。在這種情況下,它們被稱為跟蹤 Cookie

《通用資料保護條例》(GDPR)等立法,例如歐盟的 通用資料保護條例(GDPR)和《加州消費者隱私法》(CCPA),透過要求公司對其設定的 Cookie 和收集的資訊保持透明,例如要求客戶選擇加入此類資料收集,允許他們檢視公司持有的關於他們的資料,並允許他們按需刪除,從而提供了一定的幫助。然而,客戶仍然無法完全清楚他們的資料是如何被使用的。

瀏覽器如何應對

Mozilla 和 Apple 等瀏覽器供應商提供預設設定來阻止第三方 Cookie,同時也在其原始碼中包含例外和啟發式規則,以解決長期以來第三方 Cookie 在流行網站上的問題。

例如

可以透過 Firefox 的瀏覽器設定逐個允許使用第三方 Cookie。但在 Safari 中,控制更加有限 — 您可以關閉跨站跟蹤預防,但只能在程式碼級別透過 Storage Access API 允許每個框架訪問第三方 Cookie。

Google 的長遠計劃

這讓我們談到 Google。乍一看,似乎 Google 在第三方 Cookie 保護方面比其他瀏覽器慢。在撰寫本文時,只有在隱身模式下預設才會阻止第三方 Cookie,但使用者可以自行設定 Chrome 始終阻止第三方 Cookie。

注意: Microsoft Edge 目前預設也不阻止第三方 Cookie。

Google 遲遲不做出回應,是由於其在第三方 Cookie 的商業用途方面存在既得利益,這包括包括 Google 在內的各種組織的廣告業務,以及第三方身份驗證服務和許多其他用途。Chrome 在瀏覽器市場中佔有很大份額,這加劇了人們對破壞其使用者群體關鍵旅程(例如登入政府服務或購買雜貨)的擔憂。

Google 沒有采取快速的全面停用選項,而是選擇了一種更細緻的解決方案 — 逐步淘汰第三方 Cookie,同時開發新技術,以確保在預設停用第三方 Cookie 後,合法的用例仍然有面向隱私的解決方案,而不是可能促使網站轉向更隱秘的跟蹤形式或將內容置於登入和付費牆後面。

這些新的 Web 平臺功能被歸集到 Privacy Sandbox 專案之下,並且已經過大量開發和測試。其中一些現在已經實現了跨瀏覽器支援,例如 Storage Access API,這為在處理跨站 Cookie 方面實現更好的跨瀏覽器一致性鋪平了道路。

這些功能現在已經達到了 Google 認為它們足夠成熟,能夠支援其預期用例的程度,從而允許 Google 開始停用第三方 Cookie。

Chrome 將從 2024 年第一季度開始對 1% 的使用者停用第三方 Cookie 以便進行測試,並從 2024 年第三季度逐步擴大到 100% 的使用者。達到 100% 的比例取決於 Google 是否能解決英國 競爭和市場管理局(CMA)提出的任何剩餘競爭問題。

這對 Web 開發人員有何影響

由於這一變化,Web 開發人員可能會發現其 Web 屬性的使用者體驗出現問題的數量增加,特別是如果他們直接設定第三方 Cookie,或使用設定第三方 Cookie 的第三方服務。

為了解決這些問題,建議您:

  1. 審計您的第三方 Cookie 用途。第三方 Cookie 設定了 SameSite=None 值;因此,您應該能夠透過在瀏覽器開發者工具中搜索此設定來識別它們,例如在 Firefox Storage InspectorChrome Application panel 中。
  2. 測試使用第三方 Cookie 的功能是否存在問題。您可以在瀏覽器設定中將瀏覽器設定為阻止第三方 Cookie。Chrome 118+ 還有一個標誌 chrome://flags/#test-third-party-cookie-phaseout,啟用後會將 Chrome 設定為阻止第三方 Cookie,並確保新功能和緩解措施已啟用,以最好地模擬淘汰後的狀態。
    • 您應該驗證您的 SameSite=None Cookie 是否真的仍然是必需的。有可能是過去為了快速修復而將其標記為如此。
  3. 修復已損壞的關鍵功能。有各種替代方案可能適合您,例如:
    • 至少在初期,您可以使您的程式碼更具彈性,以便在第三方 Cookie 資料不可用時提供個性化程度較低的體驗,而不是完全中斷。遵循 優雅降級 的原則。
    • 您可以選擇透過其他方式收集此類資料,例如使用者調查或問卷,或者檢視您已有的資料,如產品訂單歷史記錄,以推斷趨勢。
    • 如果您的第三方 Cookie 僅在少量相關、已知的網站之間使用,您可以使用 Storage Access API 和/或 Related Website Sets,僅允許在這些特定網站上進行跨站 Cookie 訪問。Storage Access 會提示使用者提供允許網站在每個框架內使用第三方 Cookie 的許可權。
      • 如果您已經為 Firefox 或 Safari 實現了使用 Storage Access API 的解決方案,那麼現在是時候將您的實現與 Chrome 的行為進行比較了,Chrome 在 119 版本中已更新以提供全面支援。
      • Related Website Sets 可以被認為是 Storage Access API 的漸進增強:API 的用法與 Storage Access API 相同,但同一組網站中的網站將不會提示使用者獲得訪問第三方 Cookie 的許可權。
    • 如果您的第三方 Cookie 與其生成的頂級網站是一對一使用的,您可以利用 Cookies Having Independent Partitioned State (CHIPS),也稱為分割槽 Cookie,將您的 Cookie 選擇為分割槽儲存,每個頂級網站都有一個單獨的 Cookie 儲存空間。這隻需要在您的現有跨站 Cookie 中新增 partitioned 屬性。然後,它們可以不受限制地使用,但不能與其他網站共享。請注意,CHIPS 目前僅限於 Chromium。
    • 您可以開始探索 Google Privacy Sandbox 專案中提供的各種功能,看看它們是否適合您的用例(目前僅限於 Chromium)。例如:

總結

從 Web 中淘汰第三方 Cookie 已經醞釀了很長時間,這個故事還沒有結束。然而,Chrome 的公告是實現這一目標的重要一步。您可以提供幫助 — 使用上述資源檢查您的網站和應用程式是否可以使用現有功能遷移到不使用第三方 Cookie。對此廣為傳播,鼓勵他人也這樣做。並向瀏覽器供應商提供關於仍缺少哪些功能的反饋。

注意:developer.chrome.com 上的文章 為第三方 Cookie 的終結做準備 提供了更多關於從 Chrome 角度進行測試以及如何使用隱私沙盒技術來解決您的問題的資訊。