【问题标题】:JWT Auth vs Session Auth for APIAPI 的 JWT 身份验证与会话身份验证
【发布时间】:2016-04-24 10:13:04
【问题描述】:

我正在开发一个需要一些身份验证功能的 API。

我通常使用会话方法:用户发布到登录 API,我返回一个会话 ID。然后,对于所有其他 API 调用,用户需要附加该会话 ID。

我的主管建议我将 JWT 用于此类工作。但我似乎找不到在上述会话方法上使用 JWT 的任何显着优点。如果我想在使用 JWT 时维护某种“会话数据”,甚至会遇到很大的问题。

您对在这种情况下使用 JWT 的优点有任何想法吗?我应该将旧代码迁移到 JWT 吗?

【问题讨论】:

  • 我也在问自己同样的问题。你有没有得出结论?
  • 不值得,我现在继续使用会话,感谢提供的文章,现在将其标记为正确:)

标签: api session jwt


【解决方案1】:

我最终发现这篇文章涵盖了整个主题,因此回答了这个问题:

http://cryto.net/~joepie91/blog/2016/06/13/stop-using-jwt-for-sessions/

无状态 JWT 令牌不能失效或更新,并且将 根据您的位置引入大小问题或安全问题 存储它们。有状态的 JWT 令牌在功能上与会话相同 饼干,但没有经过实战考验和充分审查 实现或客户支持。

除非您使用 Reddit 规模的应用程序,否则没有理由这样做 使用 JWT 令牌作为会话机制。只需使用会话。

【讨论】:

  • JWT 令牌是否可以失效是一个实现细节(如果必须,将会话 ID 存储在令牌中)。它部分消除了该技术的一项优势(节省了一次数据库往返),但不会使该技术失效。
猜你喜欢
  • 2020-08-29
  • 1970-01-01
  • 2018-07-13
  • 1970-01-01
  • 2016-04-12
  • 2020-10-06
  • 2017-09-11
  • 2017-07-30
相关资源
最近更新 更多