什麼是Cookie?
Cookie 廣泛用於各類網站,以在可行範圍內確保最高效、最安全的用戶體驗。Cookie 是小型文本文件,你訪問網站時 Cookie 會被下載至你的個人設備,並存儲在你的瀏覽器上。網站可通過 Cookie 識別用戶設備,並存儲某些與用戶偏好或歷史操作相關的數據。
Cookie可以分為第一方cookie和第三方cookie,第三方cookie用途廣泛,如程序化廣告的頻控,廣告監測,監測分析都會採用。
蘋果的ITP
ITP,全稱為Intelligent Tracking Prevention,中文譯為智能反追蹤技術,是蘋果在2017年的世界開發者大會WWDC上提出的一項Safari的新功能,為更好地保護蘋果產品用戶的隱私。後面發布多個版本,從最開始的限制第三方cookie,到現在的限制第一方cookie,非cookie數據。
ITP 1.0
2007年隨著Safari 11版本的升級發布給用戶,規則做了很大的變動,基本就是滅了第三方cookie的節奏,但也不是出售就直接殺死,而是慢慢來,這一版的規則是;
第三方cookie需在24小時在於其主域有交互才可以使用一天後,30天之前的是不可使用的,被隔離,ITP採用機器學習算法判定哪些域名是用於跟蹤的域名和對過去24小時未訪問的網站用戶的cookie進行隔離。30天後會自動清除,不給你生成。主要注意這裡的交互,是要求你訪問第三方cookie的域名,就是你要打開第三方站點的網站,有點擊,表單提交,這才算操作,如果沒有,根本就不能用,這無疑會阻止或限制訪問許多用於廣告監測和個性化的第三方cookie,降低第三方通過cookie和其他方法跟蹤網絡用戶的能力。
但這對大型的網際網路公司,如Google、Facebook影響有限,因為天天使用這兩個產品,
ITP 1.0上線時,廣告技術公司Criteo的收入立即下降了22%。
ITP 1.1
在ITP 1.0中,對第三方的cookie是很嚴格的,但是現實中是有很多的情況是還需要第三方cookie的,
例如,很多的網站有嵌入Facebook和推特的服務的,你可以直接在你的網站使用Facebook的點like或喜歡,當你將Facebook的社交插件嵌入你的網站時,用戶只有在最近24小時內訪問過facebook.com時才能喜歡/評論。否則,用戶必須經過一個附加的確認屏幕才能執行所需的操作。如果用戶在過去30天內沒有訪問過facebook.com,則他們必須再次登錄(即使他們從未註銷過Facebook)。
其次是,ITP將檢測到此類多頁面嵌入使facebook.com能夠跟蹤用戶跨站點,不同站點都加載你,很容易被識別出來你是提供第三方服務的站點,因此拒絕從facebook.com訪問其第一方Cookie的嵌入內容,僅提供隔離的Cookie,所以獲取不到信息。
除非用戶在過去24小時內與facebook.com作為進行了交互,不然就不能直接使用Facebook的喜歡/評論,這對用戶的使用體驗很糟糕。
Storage Access API允許使用經過身份驗證的嵌入,從而解決了我們的問題。ITP 1.1 的最大更新是引入了Storage Access API,它為嵌入式第三方內容提供了一種機制,可以通過用戶交互來擺脫cookie分區。這個授權有兩種方式,一種用戶主動去操作點擊,才會彈出一個詢問窗口,一種是通過iframe的的調用就不用通知用戶。
ITP1.1的規則是
當天有效,而且需要訪問第三方站點的網站,與之有交互才可使用;1天之後30天之前是用不了,會對第三方cookie隔離,會對隔離做清除,每小時清除一次,cookie隔離被變成代清除狀態的時候,清除後是無法生成新的cookie,也就是被拉黑,你不能再用這個域去生成第三方cookie。30天之後存在直接刪除,不在再生成,是拉黑名單了,知道你是跨站跟蹤的,不給你生成了。跟ITP1.0相比主要是第二條不同,也即是在1天之後30天之前,多一個每小時清除的機制。
ITP 2.0
2018年9月ITP 2.0 發布後,刪除24小時Cookie訪問窗口,蘋果就限制了其瀏覽器上第三方 cookie 的使用,第三方Cookie必須通過經過身份驗證的嵌入可以通過Storage Access API來完成,其他被機器學習識別到是跨域跟蹤直接隔離刪除。
調用Storage Access API形式由用戶主動操作變成頁面自動彈出,簡化了用戶的操作:
而且這種身份驗證的手續數據使用也做了嚴格的限制,只有在用戶有頁面有實際內容的時候才使用,也就是用戶要在頁面有寫評論提交才可以使用第三方cookie。
ITP 2.0 會自動識別中間跳轉,並會刪除其中的數據,如A-B-C,你從A站點點擊到C站點的時候,中間跳轉是經過B的,B的數據會被刪除的。
向第三方網站傳遞referral的時候,只傳遞主域,傳遞頁面,如本來要傳遞http://www.ichdata.com/about-me.html,現在值傳遞www.ichdata.com。保護用戶隱私。
ITP 2.1
Apple在2019年初的時候發布了ITP 2.1版本,第三方cookie會被刪,不能隔離cookie,其實是都刪除,沒必要隔離了,除了登錄cookie外的第一方cookie也會在7天之內被刪除。
同一個用戶在受眾分析工具中,每隔7天就會被視作一個新用戶。
ITP 2.2
2019年4月,ITP 2.2版本隨Safari 12.2發布,特定情況的第一方cookies的壽命由7天變成了1天,注意,不是所有的都變成1天,是符合下面兩種情況的才是:
域名被是被具有跨站能力,這個就是機器學習去判斷使用連結裝飾,帶有ID,參考gclic的參數。
ITP 2.3
2019年9月發布ITP2.3,對非基於Cookie的Web存儲做限制,用連結修飾進行跨站點跟蹤,上面的ID會標記為非Cookie網站數據刪除,就是通過URL上傳遞ID標識的方式被封死了;
存儲訪問的API更新了,因為有些人在第一方cookie限制為7天的時候就想將用戶Id通過API寫到其他存儲裡面去。
Storage Access API自兩次拒絕後改為不允許,不要過度騷擾用戶
在使用Safari七天後,如果用戶未與網站上的網頁進行交互,則將刪除其的所有非cookie網站數據。
雖然Apple不遺餘力的屏蔽cookie,但Apple於 2019年5月發布了針對Safari 的實驗性歸因API,該API支持有限形式的點擊轉化跟蹤,該跟蹤直接內置於瀏覽器且不依賴Cookie。
Firefox的ETP
ETP,全稱是Enhanced Tracking Protection,中文名為增強跟蹤保護。
2018年
引入Firefox的增強跟蹤保護,用戶可以選擇阻止來自第三方跟蹤器的cookie和存儲訪問。旨在有效阻止跨站點跟蹤的最常見形式。要找到此新選項,請轉到Firefox選項/首選項。在左側菜單上,單擊「隱私和安全性」。在「內容阻止」下,單擊「第三方Cookie」旁邊的複選框,然後選擇「跟蹤器(推薦)」:
2019年
6 月 4 日起,默認為新用戶啟用了增強跟蹤保護(ETP)。
針對第一次下載和安裝 Firefox 的用戶,加強跟蹤保護將在瀏覽器的「標準」模式下自動默認開啟,攔截 Disconnect 跟蹤器清單中已知的第三方跟蹤cookies。
針對老用戶,默認開啟的加強跟蹤保護功能將在未來幾個月內自動更新上線,你不必做任何改動。如果你想儘快使用,可以在更新流量器後自行開啟。
谷歌的Chrome
由於Safari和Firefox等競爭性瀏覽器也帶來了壓力,這些瀏覽器最近添加了激進的措施來阻止在公眾中相當受歡迎的第三方Cookie。谷歌目前也在跟進這類措施。
2019年
8月Chrome瀏覽器的「Privacy Sandbox」已開放,任何提供第三方Cookie的廣告技術公司都可以調用該API。包括廣告選擇,轉換測量和防欺詐的潛在用途的情況。
2020年
Chrome 80穩定版(版本號v80.0.3987.87)在2020-02-04已正式面向Windows、macOS、Linux、Android和iOS全平臺推送,此次更新有很多的改變,但主要關註裡面的cookie政策,這次更新的cookie政策明顯是為了滿足IETF提案《Incrementally Better Cookies》提出的兩個關鍵更改:
一是默認值 SameSite=None 變為 SameSite=Lax二是會拒絕 insecure 的 SameSite=None CookieCookie默認設置為SameSite=Lax,會限制第三方cookie的使用,注意是限制,在頁面裡的跨域圖片不會發送 Cookie,但用戶點擊超連結跳轉到其他域仍然會發送。
SameSite = None拒絕不安全的的cookie,要使用第三方cookie,Chrome將要求開發人員將第三方Cookie設置為SameSite = None,並將其標記為安全,使用https的安全形式。
通過停用第三方跟蹤cookie以及更新SameSite cookie 的默認狀態,Google的總體意圖是通過在瀏覽器級別存儲用戶的所有數據來為用戶提供更大的隱私控制。
2022年
Chrome計劃與2022年通過基於瀏覽器的工具和技術,如Privacy Sandbox之類的機製取代第三方Cookie。在無cookie的未來,Google希望根據其「Privacy Sandbox」設定的標準進行廣告定位,衡量和欺詐預防,從而用五個應用程式編程接口代替cookie。
Safari的第三方cookie已經死了,但畢竟Safari的份額沒那麼大,但谷歌提出的停用時間表無疑給第三方Cookie宣判了死刑,雖然有些方式可以應對,但也一直被圍堵的節奏,誰也不知道這種方式還能用多久?目前來看,各大瀏覽器在剿殺第三方cookie或第一方cookie的時候都留一個通過API去實現衡量歸因。