新版Chrome 80浏览器可能会导致CDN访问失败。
新版 Chrome 80 版本默认屏蔽所有第三方 Cookie,即默认为所有 Cookie 加上 SameSite=Lax
属性,详情请参见公告。这样可以从源头屏蔽掉大量的 CSRF 漏洞,但由于第三方 Cookie 丢失,可能会导致页面不可访问的问题。
目前一些厂商已经开始改造,例如:
排查您网站的页面。
打开SameSite by default cookies和Cookies without SameSite must be secure两个Flag。
分别开启这两个开关。
开启后,您可以提前试验屏蔽第三方 Cookie 的效果。
注意部分浏览器不能加SameSite=none
的情况:
IOS 12 的 Safari 以及一些老版本的 Chrome的浏览器 。由于这些浏览器会把 SameSite=none
识别成 SameSite=Strict
(比 Lax 还要严格的一种模式),所以服务端必须在下发 Set-Cookie 响应头时进行 User-Agent 检测,对这些浏览器不下发 SameSite=none
属性,详见公告。
仅仅只有跨站的情况。技术人员对跨域更了解,跨站没有跨域那么严格,例如 a.a.com和 b.a.com就是只跨域而不跨站的,也就是说这两个是同一个网站,因此不需要加SameSite=none
属性。
说明 请您不要为所有 Cookie 添加
SameSite=none
。 我们建议您更有针对性的为真正的第三方 Cookie 添加SameSite=none
属性,如果连第一方 Cookie 也加上,网站安全性会和以前一样,没有提升。