Cookie中SameSite的問題與解決辦法

2021-10-09 07:30:28 字數 882 閱讀 3510

由於登入時使用到了cookie,專案又是前後端分離,所以在跨域前提下解決跨域問題後可以正常傳送cookie。但是在chrome瀏覽器高版本中,它為了防止第三方**盜用cookie實現csrf攻擊,所以谷歌採用設定cookie的same-sitesecure屬性來防止csrf攻擊。

一、強制使用者不要使用chrome類似的瀏覽器(開個玩笑哈,這樣當然是不合理的)

那肯定是pass掉
二、關掉chrome瀏覽器的這個設定(由於安全性,所以該方法也是不推薦!)

首先在位址列搜 chrome://flags,然後

注:由於關掉了這些設定,所以有可能會發生csrf攻擊,有安全隱患,不建議。

三、使用https來保證後台介面安全性(雖然安全,但要花錢)

在使用https的前提下根據chrome瀏覽器的提示,還需設定cookie的same-site和

secure屬性。

例如:samesite=none; secure

四、將前端的url和後端請求介面設定為同一網域名稱下即可

例如:

前端:

後端:

這兩個專案都屬於 test.com 網域名稱下,所以屬於同站不同源,瀏覽器就會認為url和請求目標一致,並非第三方**請求,所以就會成功傳送cookie了。

-  samesite=none; secure
** 注:** 當使用該規則時,則需使用https。

瀏覽器cookie中SameSite的理解

瀏覽器中的cookie資訊,可以用於儲存使用者登入某個站點的資訊儲存,保持其使用者驗證的狀態。但是cookie又是每次隨著請求會自動傳送到伺服器去的,這就給了其他站點發起csrf攻擊和使用者追蹤的機會。於是就有了cookie的samesite屬性,用於限制第三方 的cookie傳送機制,具體如下 最...

瀏覽器安全機制 Samesite

iframe內嵌其它系統登入頁 開始是可以登陸成功的,過了幾天,突然無法登陸了,而瀏覽器直接訪問內嵌系統,還是正常登入的,這是為什麼呢?看到如下警告資訊 samesite 這可是第一次見,於是查一查 現象火狐可以 chrome版本 80可用問題了解chrome 51 開始,瀏覽器的 cookie 新...

Java中的cookie 2 cookie共享

一 可在同一應用伺服器內共享方法 設定cookie.setpath 6 有多條cookie.setpath 語句的時候,起作用的以最後一條為準。二 跨域共享cookie的方法 設定cookie.setdomain jszx.com a機所在的域 home.langchao.com,a有應用cas 2...