SpringCloud
SpringCloud copied to clipboard
[优化]Spring Security OAuth2中jwt token失效优化
jwt token为自存储,token生成后一直到过期才能失效。
场景:用户登陆后,手工退出,页面导入到登录页,前端清空token,但实际上这个token还是有效,可直接请求后台。
优化方案:
token生成后临时存储在redis, 若用户退出,则清空redis。网关层可做redis的校验,若没有key,则直接认为失效。
存储了token不就是有状态的,不是stateless了?
存储了token不就是有状态的,不是stateless了?
这个不存在这个问题,这个未存储用户的使用信息,只是登记了token的编号,用他来判断是否退出
如果有这种需求的话不要用jwt,jwt默认就是无状态的,有状态的建议直接用spring oauth2的token验证接口
如果有这种需求的话不要用jwt,jwt默认就是无状态的,有状态的建议直接用spring oauth2的token验证接口
是的,jwt 是自包含的,过期时间在token中,服务端无法随时控制token有效性。 有人想加这个就单单为了能在服务端控制其有效性,否则token泄漏,服务端也无能为力。
集成到项目里面了吗