Google Chrome 83版本后iframe內(nèi)嵌頁面cookie問題
Chrome 51 開始澜术,瀏覽器的 Cookie 新增加了一個 SameSite 屬性吕座,用來防止 CSRF 攻擊和用戶追蹤。Cookie 的SameSite屬性是用來限制第三方 Cookie瘪板,從而減少安全風(fēng)險吴趴。
Chrome更新83+版本后,出于安全考慮,瀏覽器默認禁止了內(nèi)嵌锣枝,比如:當前網(wǎng)頁有一個 GitHub 鏈接厢拭,用戶點擊跳轉(zhuǎn)就不會帶有 GitHub 的 Cookie,跳轉(zhuǎn)過去總是未登陸狀態(tài)撇叁。
當出現(xiàn)這類情況時供鸠,可以設(shè)置 SameSite 的值為 None ,不過陨闹,前提是必須同時設(shè)置 Secure 屬性(Cookie 只能通過 HTTPS 協(xié)議發(fā)送)楞捂,否則無效。
- 下面的設(shè)置無效趋厉。
Set-Cookie: widget_session=abc123; SameSite=None
- 下面的設(shè)置有效寨闹。
Set-Cookie: widget_session=abc123; SameSite=None; Secure
或者是通過瀏覽器禁用:
在瀏覽器地址輸入 chrome://flags/#same-site-by-default-cookies 進入SameSite設(shè)置。
將SameSite by default cookies 的 default 修改為 Disabled 再重啟即可君账。
參考鏈接:
http://www.ruanyifeng.com/blog/2019/09/cookie-samesite.html