滚动部署,会话和CSRF保护

2020-09-22 10:16发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)尊敬的专家等。 等, 我对滚动...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


尊敬的专家等。 等,

我对滚动部署和会话管理有一个哲学问题。 让我们说发生以下情况:

  • 用户登录商店并获得一个有效期为两周的会话,他在购物车中添加了商品

  • 我们添加了CSRF保护,从现在开始,它要求所有发送POST的HTTP请求都将需要一个令牌。 这些更改是使用滚动部署进行部署的

这里的问题是,用户会话和购物车中的物品发生了什么?如果会话以某种方式持续存在,那么他将没有CSRF令牌和所有的POST HTTP请求 他的发送将以403结尾,直到获得新的会话为止。 所以问题又来了,滚动部署发生时,会话是否保持不变?

任何帮助将不胜感激!

亲切的问候,

L

3条回答
小灯塔
2020-09-22 10:57

我不相信Hybris默认篮子持久性的工作方式。 您不必保持长时间运行的会话(因为这将杀死您的应用服务器,将所有这些会话都保留在内存中)。 而是有一个名为 -cart 的cookie,其中包含购物车的uuid。 当您返回带有新会话的站点时,这将用于从数据库还原购物车。 因此,根据您的情况,在重新启动后查看页面时,您将获得一个新的会话和CSRF令牌,但您的购物车将被还原到该新会话中。 如果它失败了,那么是在页面中包含CSRF令牌并在您按下提交之前重新启动您所在的服务器。 然后,您将被跳到新服务器,进行新会话,CSRF验证将失败。 我在这里假设您正在使用粘性会话,但是如果您进行了某种会话共享,那么如他的评论中所述,它可能会正常工作。

一周热门 更多>