我正在开发一个需要一些身份验证功能的API。
我通常使用会话方法:用户发布登录API并返回会话ID。然后,对于所有其他API调用,用户需要附加该会话ID。
我的主管建议我使用JWT来完成这项工作。但我似乎无法找到使用JWT而非上述会话方法的任何显着优点。如果我想保留某种会话数据,那么甚至会有很大的影响。使用JWT时。
您是否了解在这种情况下使用JWT的优点?我应该将旧代码迁移到JWT吗?
答案 0 :(得分:1)
我最终发现这篇文章涉及整个主题,因此回答了这个问题:
http://cryto.net/~joepie91/blog/2016/06/13/stop-using-jwt-for-sessions/
无状态JWT令牌不能无效或更新,并且会 根据您的位置引入尺寸问题或安全问题 存储它们。有状态JWT令牌在功能上与会话相同 饼干,但没有经过实战考验和精心评审 实现或客户支持。
除非您使用Reddit规模的应用程序,否则没有理由 使用JWT令牌作为会话机制。只需使用会话。