searchusermenu
  • 发布文章
  • 消息中心
点赞
收藏
评论
分享
原创

关于浏览器警告提示 - This Set-Cookie header didn't specify

2024-01-05 07:06:08
9
0

这个警告是由浏览器发出的,告诉你在HTTP响应头的Set-Cookie字段中缺少SameSite属性,因此浏览器默认将其设置为SameSite-Lax。这可能导致跨站点的Cookie在某些情况下被阻止,因为默认情况下,浏览器要求Cookie只能在顶级导航的响应中进行设置,否则就要求设置SameSite=None以允许跨站点使用。

首先,让我们理解这里的一些关键术语:

Set-Cookie头部字段: 在HTTP响应中,服务器可以通过Set-Cookie头部字段来设置Cookie。

SameSite属性: SameSite属性是Cookie的一个属性,用于控制Cookie在跨站点请求中是否被发送。它有三个可能的值:Strict,Lax和None。

Strict:仅允许在顶级导航中发送Cookie,即完全禁止第三方website发送Cookie。

Lax:允许在顶级导航和导航到嵌套导航的安全上下文中发送Cookie,例如通过安全链接访问的子页面。

None:允许在任何情况下发送Cookie,包括跨站点请求。

Cross-Site请求: 当请求的源与页面的源不同,就称为跨站点请求。

现在,让我们通过一个例子来说明这个警告:

假设你的websitewww.example.com向服务器发出请求,并且服务器返回了一个包含Set-Cookie头部字段的响应,但该字段没有指定SameSite属性。浏览器为了安全性,默认会将SameSite属性设置为Lax,即只在顶级导航中发送Cookie。

如果你的website上有一个第三方资源,比如api.external.com,它返回一个设置了Cookie的响应,而且该Cookie未指定SameSite属性,浏览器就会发出这个警告。因为这个Cookie是通过跨站点的响应设置的,而不是在顶级导航中。

要解决这个问题,你需要确保在响应头部的Set-Cookie字段中设置了SameSite=None,以允许跨站点使用。这通常需要在服务器端进行配置,以确保服务器正确设置Cookie的SameSite属性。

总体而言,这个警告是为了加强安全性,防止恶意website利用Cookie进行一些潜在的攻击。通过了解SameSite属性以及如何正确设置Cookie,你可以确保你的website在安全性方面符合最佳实践。
 

0条评论
0 / 1000
老程序员
1097文章数
1粉丝数
老程序员
1097 文章 | 1 粉丝
原创

关于浏览器警告提示 - This Set-Cookie header didn't specify

2024-01-05 07:06:08
9
0

这个警告是由浏览器发出的,告诉你在HTTP响应头的Set-Cookie字段中缺少SameSite属性,因此浏览器默认将其设置为SameSite-Lax。这可能导致跨站点的Cookie在某些情况下被阻止,因为默认情况下,浏览器要求Cookie只能在顶级导航的响应中进行设置,否则就要求设置SameSite=None以允许跨站点使用。

首先,让我们理解这里的一些关键术语:

Set-Cookie头部字段: 在HTTP响应中,服务器可以通过Set-Cookie头部字段来设置Cookie。

SameSite属性: SameSite属性是Cookie的一个属性,用于控制Cookie在跨站点请求中是否被发送。它有三个可能的值:Strict,Lax和None。

Strict:仅允许在顶级导航中发送Cookie,即完全禁止第三方website发送Cookie。

Lax:允许在顶级导航和导航到嵌套导航的安全上下文中发送Cookie,例如通过安全链接访问的子页面。

None:允许在任何情况下发送Cookie,包括跨站点请求。

Cross-Site请求: 当请求的源与页面的源不同,就称为跨站点请求。

现在,让我们通过一个例子来说明这个警告:

假设你的websitewww.example.com向服务器发出请求,并且服务器返回了一个包含Set-Cookie头部字段的响应,但该字段没有指定SameSite属性。浏览器为了安全性,默认会将SameSite属性设置为Lax,即只在顶级导航中发送Cookie。

如果你的website上有一个第三方资源,比如api.external.com,它返回一个设置了Cookie的响应,而且该Cookie未指定SameSite属性,浏览器就会发出这个警告。因为这个Cookie是通过跨站点的响应设置的,而不是在顶级导航中。

要解决这个问题,你需要确保在响应头部的Set-Cookie字段中设置了SameSite=None,以允许跨站点使用。这通常需要在服务器端进行配置,以确保服务器正确设置Cookie的SameSite属性。

总体而言,这个警告是为了加强安全性,防止恶意website利用Cookie进行一些潜在的攻击。通过了解SameSite属性以及如何正确设置Cookie,你可以确保你的website在安全性方面符合最佳实践。
 

文章来自个人专栏
SAP 技术
1097 文章 | 1 订阅
0条评论
0 / 1000
请输入你的评论
0
0