SameSite的Cookies=无;并非在所有上下文中都发送Secure=true.铬91



我有一个托管在https://parent.example1.com上的web应用程序,它嵌入了运行在https://child.example2.com上的跨域iframe。我控制这两个应用程序。

我需要使用axios 执行从父应用程序到子域的身份验证请求

const config = {
headers: {
Authorization: "Bearer XYZ",
Accept: "application/json",
},
withCredentials: true,
};
axios.get("https://child.example2.com/auth", config)
.then((response) => {
...
})
.catch((error) => {
console.error(error);
});

我没有收到SameSiteSecure错误/警告,这是响应中的Set Cookie标头:

Set-Cookie : userId="Exaat3Na3NEAA3AYRmi6jeciH5dEafX"; Version=1; Max-Age=604800; Expires=Sat, 25-Jun-2021 13:51:54 GMT; Path=/; Secure; HttpOnly; SameSite=None

这个cookie应该与域child.example2.com相关联,但当我刷新iframe时,浏览器由于某种原因没有发送cookie。

当我使用--disable web security 禁用chrome web安全时,它工作得很好

我在想我做错了什么?

https://child.example2.com应该包括以下标题:

access-control-allow-credentials: true //(this one was missing)
access-control-allow-origin: https:/parent.example1.com //(and not * if the header above is set to true)

相关内容

最新更新