3

Webserver 提供显式会话管理,因为 HTTP 协议是无状态的。假设如果我正在编写一个新的 Web 服务器并且我知道我将只支持 HTTPS,我可以依靠 HTTPS 进行会话管理吗?

4

2 回答 2

2

可能不是。

需要一个稳定的 SSL/TLS 会话标识符 (SSL_SESSION_ID) 作为功能的必要条件很可能会破坏该站点以供太多真实用户使用。SSL 客户端没有强制要求在很长一段时间内保持不变,有些浏览器可能不会。我相信 IE<8 可以断开连接并任意协商新会话。

还有一些操作上的问题......例如,如果您将它托管在终止的反向代理后面,它会中断,并且您必须小心缓存,因为没有Vary:-on-SSL-session-ID 可能。

作为更广泛系统的一部分,它当然具有跟踪和风险评级的有趣潜力,但根据我所看到的尝试过它的人(不包括我,所以用一点盐),它可能不是今天是饼干的可靠替代品。

于 2013-07-18T15:20:22.267 回答
0

答案:你不能依靠 HTTPS 协议来管理你的应用程序状态。HTTP 和 HTTPS 都是无状态的。您应该使用 Web 服务器会话管理来管理应用程序状态。

于 2013-07-18T11:52:48.037 回答