请教各位下 将用户的 id 在 jwt 中 算是敏感信息么?

2022-12-02 09:45:25 +08:00
 hi20151215x

程序是通过解析 jwt 中的用户 userId , 进行查询的


select * from orders where ownerid = #userId

但是看网上说 不建议将敏感信息 放入 jwt 中, 现在我有点迷惑 这个 userId 到底算不算敏感信息?

说敏感吧,毕竟有 sha256+secret key 加密。 说不敏感吧,如果换成别的 userId ,就可以查询其他用户的信息。

6453 次点击
所在节点    信息安全
61 条回复
leonme
2022-12-02 09:53:21 +08:00
userId 很多网站直接露出,你说算敏感信息吗?
geelaw
2022-12-02 09:57:03 +08:00
> 说敏感吧,毕竟有 sha256+secret key 加密。 说不敏感吧,如果换成别的 userId ,就可以查询其他用户的信息。

我不知道从何吐槽起了。
dddd1919
2022-12-02 09:59:10 +08:00
如果 id 作为数据表主键或功能外键之类的内部功能字段,建议不要放入 jwt ,除非信息需要展示给用户,否则完全没必要放入
gbw1992
2022-12-02 09:59:53 +08:00
一般情况下都这么干
我个人觉得 userid 也是拿用户名和和密码换的,不是用户信息不算是敏感。
orangie
2022-12-02 10:02:43 +08:00
如果不放心,专门设计一个 jwtId ,也做成全局唯一,限制其用途只用来通过 JWT 查找真正的 userId?
sheeta
2022-12-02 10:04:14 +08:00
如#5 所说,redis 映射一个 jwtId => userId 的关系
tool2d
2022-12-02 10:10:53 +08:00
肯定不能用 userId 啊,你看看大厂的用户 oauth API ,全部都是转换成 access token 令牌访问的。
swulling
2022-12-02 10:13:10 +08:00
userid 不敏感,但是你们有接口可以允许通过 userid 查询其他人的信息,这个是错误的。没权限控制么?
hoopan
2022-12-02 10:28:36 +08:00
不是敏感,userid 没啥特殊含义
Jooooooooo
2022-12-02 10:33:39 +08:00
"如果换成别的 userId ,就可以查询其他用户的信息"

这是典型的越权. 你再多搜搜
vopin
2022-12-02 10:35:00 +08:00
> 如果换成别的 userId ,就可以查询其他用户的信息
不是有签名吗?内容更换了校验是不成功的呀。
mayday526
2022-12-02 10:37:12 +08:00
@Jooooooooo 越什么权,用户手动修改 jwt 中的 userid ,这个 jwt 就不会认证通过,除非用户知道该系统 jwt 的加密方式
radiocontroller
2022-12-02 10:37:45 +08:00
如果换成别的 userId ,就可以查询其他用户的信息。

前提是加密加签要正确,才能生成正确的 jwt token ,那谁又能拿到你的私钥去做这个事呢
fuchish112
2022-12-02 10:38:23 +08:00
看业务咯,大多数业务是不敏感的
mayday526
2022-12-02 10:39:29 +08:00
userid 都要隐藏起来?那你们还要用 jwt 干嘛,为什么不用普通的 redis+自定义 token 的方式,jwt 用来认证一堆鬼问题:自动续期 jwt 如何解决,强制剔除或者使某个 jwt 失效又该如何解决
Jooooooooo
2022-12-02 10:41:46 +08:00
@mayday526 如你所说, 那就并非 "换成别的 userId ,就可以查询其他用户的信息".

我只是按照 op 所说描述.
diegozhu
2022-12-02 10:45:27 +08:00
@geelaw 请教下,有哪些槽点?
aitaii
2022-12-02 11:04:19 +08:00
jwt 不加密的?
momocraft
2022-12-02 11:05:26 +08:00
JWE
lawler
2022-12-02 11:29:03 +08:00
@diegozhu #17 这句话和“他知道我的电话号码,就可以接听我的来电”一样卧槽。

更值得发掘的槽点是,11 楼之前的狗屁不通。。(哭笑

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

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

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

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

© 2021 V2EX