基于会话的身份验证安全性



据我所知,在身份验证阶段之后,当用户通过https或不通过https使用基本身份验证将其用户名和密码发送到服务器时,服务器会向客户端发送一个sessionId,在该客户端之后,每个后续请求都会使用该sessionId

  • 我的问题是,如何为每个请求保护sessionId,使其不会被黑客劫持?因为sessionId是以cookie的形式发送的(在提交用户名和密码后从服务器发送),并且很容易被窃听(据我所知,如果我是对的)
  • 我的第二个问题是了解基于令牌的身份验证和基于会话ID的身份验证之间的区别。我读了很多关于它们之间区别的解释,但我很难理解

最好的肉馅饼。

您可以设置httpOnly标志以确保无法从javascript读取cookie。

安全标志可以确保cookie只能通过基于SSL/TLS的连接进行传输。

作为cookie发送,很容易被窃听。

如果它是通过HTTPS发送的(您已经将其添加为标签),则不会。这正是HTTPS的意义所在。

还有其他攻击可能会危及网络会话,但这是一个不同的、更长的讨论。

我的第二个问题

本应作为单独的问题发布。

会话id专门绑定到会话,因此可以引用身份验证所需的状态信息之外的状态信息(例如,您的购物篮),而令牌身份验证只处理身份验证。

最新更新