【发布时间】:2016-10-01 15:14:32
【问题描述】:
我读过一些关于“JWT vs Cookie”的帖子,但它们只会让我更加困惑......
我想澄清一下,当人们谈论“基于令牌的身份验证与 cookie”时,这里的 cookies 仅指 session饼干?我的理解是cookie就像一个媒介,它可以用来实现基于令牌的身份验证(在客户端存储可以识别登录用户的东西)或基于会话的身份验证(在客户端存储一个与服务器端上的会话信息相匹配的常量)
为什么我们需要 JSON 网络令牌?我使用标准 cookie 来实现基于令牌的身份验证(不使用会话 ID,不使用服务器内存或文件存储):
Set-Cookie: user=innocent; preferred-color=azure,我观察到的唯一区别是 JWT 包含两者有效负载和签名...而您可以在 已签名或纯文本 cookie 之间选择 http 标头。在我看来,签名的 cookie (cookie:'time=s%3A1464743488946.WvSJxbCspOG3aiGi4zCMMR9yBdvS%2B6Ob2f3OG6%2FYCJM') 更节省空间,唯一的缺点是客户端无法读取令牌,只有服务器可以......但我认为这很好,因为就像 claim JWT 是可选的,token 没有必要有意义
【问题讨论】:
标签: json authentication cookies jwt