前同事把 jwt token 存在 sql 里,做法是不是有问题?

2019-08-09 08:03:56 +08:00
 yamedie

在一个公众号外包项目里,与前同事不期而遇,他后端我前端。jwt 竟然被这样应用,想问:

1、这种使用姿势好处在哪里?感觉如果不验证 token 只读库比对的话,也许自己生成个 uuid 与 userId 做关联就可以了,为什么要用 jwt ?

2、验证 jwt 有这么耗时吗?之前用 nodejs 写过 jwt 的 demo,没有察觉到解码 jwt 的开销。

3、是否 secret 写的简短一些,token 就会短一些,解码耗时就少一些?

14775 次点击
所在节点    程序员
103 条回复
xiangyuecn
2019-08-09 21:31:29 +08:00
翻页😎
alaikis
2019-08-09 21:42:41 +08:00
存数据库没问题,传用户 ID 没必要吧
chinvo
2019-08-09 22:27:01 +08:00
@abcbuzhiming #95 原理上来讲自己实现一个加密、签名逻辑,等于造了个 jwt 轮子。

密码学和信息安全上最忌讳闭门造车,所以把 jwt “扩展”一下这样用是很普遍的。

比如 asp.net core identity 就可以把 session 配置为数据库存储,以大幅度减小 cookie 和 token 体积,identityserver 和 asos 在这种模式下发放的 token 就是我前面说的模式。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/590337

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX