34 条回复  ·  3650 次点击
sampeng 小成 3 天前
所有用无限期的 token 的时候都一定有过临时 token 。比如后台某个服务/脚本临时用个 token 。。然后时间长了,这个 token 就无法改了,特别的蛋疼。token 就应该是无状态的,一定时间内轮换。不然请用 cookie/session 机制。
sampeng 小成 3 天前
另一方面。我就在我之前公司 app 上碰到过。无聊的黑客,登陆了就拿着 token 无限制的做任何事。等你发现的时候已经受损失了。如果是双 token 机制,上线的时候就会把访问频率考虑进去。单 token 的,大部分程序员应该实现的就是又不是不能用策略。。防刷?想啥呢。。。
shenyuzhi 小成 3 天前
纯粹就是为了性能,和安全性/分布式什么的一点关系都没有。 at 是离线校验,不读数据库。 rt 是在线校验,需要访问数据库。 假设某种业务每个小时访问接口 1000 次,at 有效期 1 个小时。此时每个小时可以省 999 次访问数据库。只有过期的那次才需要刷一下
SilentRhythm 初学 3 天前
针对新的疑问: 1. 不通知; 2. 只能等待过期,所以才设计较短的有效期来一定程度上规避安全风险。
ilylx2008 小成 3 天前
看到一个银行的实现,accessToken 有效期 2 分钟
1234
返回顶部