-->

2020年3月30日 星期一

SameSite cookie

踩雷:
因為登入資訊存在cookie中,smartpay付款完成後,導回指定頁面時,抓不到登入狀態的cookie,導致後續判斷有問題。

Chrome 80 之後的版本,預設的 Cookie 設定將會無法跨站存取 Cookie 值,若想要允許 Cookie 跨網站存取的話(SameSite = None),需要使用 HTTPS 才可以。

Cookie SameSite 有三種設定:
Strict:最嚴謹,完全禁止第三方 Cookie,跨網域時,任何情況下都不會發送 Cookie。只有與目前網頁網址一致才能發送。
Lax (default):稍微放寬,大多數情況也不發送第三方 cookie ,但Get請求可以。
None(需有 HTTPS 搭配,否則一樣等同 Lax):允許跨網域存取。
 關閉same-site-cookie default:
 chrome://flags/

參考:
https://web.dev/samesite-cookies-explained/
Chrome 80 後針對第三方 Cookie 的規則調整 (default SameSite=Lax)

沒有留言:

張貼留言