本文介绍了SameSite ="Lax"和"Sax"之间的区别是什么?和SameSite =“严格"?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
有人可以通过一个很好的例子告诉我 SameSite ="Lax" 和 SameSite ="Strict" 有什么区别,因为我对两者之间有些困惑?
Can anyone tell me what is the difference between SameSite="Lax" and SameSite="Strict" by a nice example as I am a bit confused between these two?
推荐答案
Lax允许在某些跨站点请求中发送cookie,而Strict从不允许在跨站点请求中发送cookie.
Lax allows the cookie to be sent on some cross-site requests, whereas Strict never allows the cookie to be sent on a cross-site request.
可以跨站点发送Lax cookie的情况必须满足以下两个条件:
The situations in which Lax cookies can be sent cross-site must satisfy both of the following:
- 该请求必须是顶级导航.您可以将其视为等同于网址栏中显示的网址更改(例如,用户单击链接以转到另一个站点.
- 请求方法必须是安全的(例如GET或HEAD,但不能是POST).
例如:
- 假设某用户位于site-a.com上,然后单击链接以访问site-b.com.这是一个跨站点的请求.这是顶级导航,是GET请求,因此Lax cookie被发送到site-b.com.但是,严格的cookie不会发送,因为它毕竟是跨站点请求.
- 用户位于site-a.com上,并且存在一个内嵌了site-b.com的iframe.这是跨网站的请求,但不是顶级导航(用户仍在site-a.com上,即,在加载iframe时,网址栏不会更改).因此,松懈或严格的cookie都不会发送到site-b.com.
- 用户位于site-a.com上,该站点将表单过帐到site-b.com.这是一个跨站点请求,但是方法(POST)是不安全的.它不符合Lax Cookie跨站点访问的条件,因此Lax和Strict Cookie均不会发送到site-b.com
这篇关于SameSite ="Lax"和"Sax"之间的区别是什么?和SameSite =“严格"?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!