Google 已表示他们将SameSite=Lax
在 2020 年 2 月默认将属性添加到 cookie。在准备工作中,我们已经开始测试使用SameSite=Lax
我们所有的 cookie,包括我们的会话 cookie ( PHPSESSID
)。
我们遇到了一个问题,我们将用户重定向到 WorldPay,以便他们可以添加他们的银行账户。WorldPay 然后将新帐户的详细信息发回我们的网站。问题是,因为这是一个跨站点请求,当用户返回我们的站点时,他们的浏览器不会加载会话 cookie,因此他们会退出我们的网站。
我只是想知道是否有关于如何处理这个问题的最佳实践。SameSite
防止跨站点请求伪造攻击。在我们的例子中,我们的跨站点请求不是伪造或攻击,所以我们想做相当于将请求列入白名单。
我想我们可以在将用户发送到 WorldPay 之前将会话 ID 存储在数据库中,然后在用户返回时使用之前的会话 ID 恢复会话。当然,挑战在于知道回来的人和离开的人是同一个人。我想我们可以通过设置一个SameSite=None
带有秘密令牌的 cookie 来做到这一点,并在返回时重新检查该令牌。
这个问题一定是SameSite
cookies新时代的常见“问题”。我有兴趣听听你是如何解决的?