我有一个网站a.com,该网站的第三方应用程序指向apps.b.com。当我登录到a.com时,还将在后台使用相同的凭据对apps.b.com进行身份验证。这样一来,用户不必登录即可访问apps.b.com。我了解浏览器在向其发出请求时会将所有cookie发送到apps.b.com。现在是这样的。阅读有关SameSite属性的文章https://web.dev/samesite-cookies-explained/,看来apps.b.com是第三方网站。 现在我是否必须在a.com上配置Web服务器以将cookie设置为SameSite = none;安全;还是必须将SameSite = none;设置为apps.b.com的Web服务器上的安全?
答案 0 :(得分:1)
每次您发出需要cookie的跨站点请求时,都需要将这些cookie标记为SameSite=None; Secure
。
因此,例如,如果用户在a.com
上并且您有<iframe>
或fetch()
到apps.b.com
期望使用cookie,则apps.b.com
cookie需要SameSite=None; Secure
。
反之亦然,如果用户在apps.b.com
上,而您正在通过a.com
cookie向a.com
发出请求以检查其身份验证状态,则这些cookie需要{{1 }}。
基本上,您要寻找的模式是浏览器位置栏中的站点与需要cookie的站点不同,那么这些站点是需要标记的cookie。因此,根据您的设置,可能是其中之一或全部。