Web服务器提供显式会话管理,因为HTTP协议是无状态的。 假设我正在编写一个新的Web服务器并且我知道我只支持HTTPS,我可以依靠HTTPS进行会话管理吗?
答案 0 :(得分:2)
可能不是。
要求稳定的SSL / TLS会话标识符(SSL_SESSION_ID)是功能必不可少的,可能会为太多真实用户破坏网站。 SSL客户端并未强制要求在较长时间内保持相同,而某些浏览器可能不会。我相信IE< 8可以放弃连接并随意协商新会话。
还存在运营问题......例如,如果您将其托管在终止的反向代理之后它会中断,并且您必须小心缓存,因为没有Vary:
- 在SSL上-session-ID可能。
作为更广泛系统的一部分,跟踪和风险评级当然具有有趣的潜力,但从我所看到的那些尝试过它的人(不包括我,所以带着一点盐)它可能不是今天cookie的可靠替代品。
答案 1 :(得分:0)
答案:您无法依靠HTTPS协议管理您的应用程序状态。 HTTP和HTTPS都是无状态的。 您应该使用Web服务器会话管理来管理应用程序状态。