微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Tomcat会话管理-URL重写并从http切换到https

如何解决Tomcat会话管理-URL重写并从http切换到https

使用相同的cookie或URL令牌维护HTTP和HTTPS之间的会话似乎并不理想。

想象一下您的用户登录的情况,对于电子商务网站中的每个请求/响应,来回传递给定的cookie(或URL令牌)。如果中间的人能够读取该cookie,则可以使用它登录到该站点的HTTP或HTTPS变体。即使合法用户随后通过HTTPS进行操作,攻击者仍将能够访问该会话(因为他也将拥有合法cookie)。他可以看到购物车,付款方式之类的页面,或者更改送货地址。

在HTTP会话和HTTPS会话之间传递某种形式的令牌(如果您使用的是会话)是有意义的,但是将它们视为一个令牌并且将它们视为相同会导致一些漏洞。在查询参数中创建一次性标记,只是过渡可能是一种解决方案。但是,您应该将它们视为两个单独的经过身份验证的会话。

有时,使用混合HTTP和HTTPS内容的网站可能会发生此漏洞(某些浏览器(例如Firefox)会在发生这种情况时向您发出警告,尽管大多数人倾向于在第一次弹出时将其禁用)。您可以在主页上使用HTTPS会话cookie,但是该页面包含使用纯HTTP的公司徽标的图像。不幸的是,浏览器会同时发送两个Cookie(这样攻击者便可以使用Cookie)。我已经看到了这种情况的发生,即使所讨论的图像甚至不存在(浏览器会将带有cookie的请求发送到服务器,即使它返回了404都没有找到)。

解决方法

我是C的老手,但是是Java / Tomcat的新手。

我只在http中使用Tomcat会话管理就可以了。当我开始考虑切换到https时遇到问题。

我收集了有关Tomcat的信息,如果要在从http切换到https并返回到http时保持会话,则必须从http会话开始。当浏览器启用cookie时,这对我来说工作正常。

但是,当禁用浏览器的Cookie(并且正在使用URL重写)时,将http切换为https或再次将其切换回会导致每次都启动一个新会话。我假设这是安全的事情。

问题1-是否可以/希望使用URL重写在http和https之间维持会话?

问题2-如果不可能,那么电子商务开发人员如何处理非cookie用户?

我不想阻止非Cookie的人使用我的网站。我确实希望在http和https之间切换一些灵活性。

感谢您的帮助,史蒂文。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。