服务器如何验证基于会话的 cookie 是真实的?

Posted

技术标签:

【中文标题】服务器如何验证基于会话的 cookie 是真实的?【英文标题】:How are session based cookies validated to be genuine by the server? 【发布时间】:2020-12-22 12:53:55 【问题描述】:

我试图了解来自客户端的基于会话的 cookie 是如何被服务器验证的。对于上下文,这是我的高级理解:

对于身份验证,我知道有 2 种方法,会话和令牌。

令牌身份验证通常是使用私钥签名的 JWT。使用此密钥,服务器可以验证用户 ID(或其他)是否真实。

对于基于会话,当用户登录时,服务器上会创建一个唯一 ID,并将其传递给客户端并存储为 cookie。然后对于来自客户端的每个请求,cookie 是标头的一部分,服务器可以查找 ID 以了解客户端是谁。

我的问题是服务器如何知道这个 ID 是真实的?恶意客户端是否可以使用不同的 ID 试试运气,直到其中一个起作用?

【问题讨论】:

【参考方案1】:

我相信,答案是:https://***.com/a/48717678/7648461。

简而言之 -> 有记录跟踪哪个用户和哪个会话密钥。

【讨论】:

以上是关于服务器如何验证基于会话的 cookie 是真实的?的主要内容,如果未能解决你的问题,请参考以下文章

禁用 cookie 时如何验证用户身份?

使用 cookie/会话进行移动应用程序身份验证?

Cookie 会话身份验证是如何工作的?

具有基于 HttpOnly cookie 的身份验证和会话管理的单页应用程序

服务器如何在基于令牌的授权中将 JWT 发送给客户端?

播放框架会话和 cookie 是如何工作的?