使用访问令牌和刷新令牌的 JWT 身份验证流程

泥鳅

我正在处理一个项目(没有任何生产级别,仅用于提升我的技能)并且我正在使用 JWT 来处理身份验证。从我读到的内容来看,仅将 JWT 用作访问令牌是非常不安全的,因此我们需要刷新令牌。因此,在登录时,服务器会返回访问令牌和刷新令牌(我将其存储在 httpOnly cookie 中)。访问令牌在短时间内到期,但刷新令牌用于在它到期时获取新令牌。

我的问题是,我们什么时候使用刷新令牌来获取新的访问令牌?是在用户想要获取受保护资源并发现访问令牌已过期(而刷新令牌尚未过期)时还是每次用户想要获取受保护资源时发送新的访问令牌?我对刷新令牌何时何地发挥作用感到困惑。

(我使用 React 作为前端,使用 Nodejs 作为服务器)

哈利

您正在使用一些安全令牌,因此这意味着您的系统具有一些受保护的资源。只有在成功验证令牌后才能访问这些资源。由于您正在使用 JWT 令牌(通常用于无状态身份验证)并且您的系统同时授予access_token授予refresh_token客户端,因此在服务器端您可以使用一些身份验证拦截器来验证每个私有请求中的 access_token 并返回一些错误代码令牌到期。在客户端,您还可以使用一些过滤器来捕获错误代码,并通过利用可用的 refresh_token 从服务器请求新的 access_token。如果 refresh_token 过期,您的系统应遵循新身份验证的路线。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

AngularJS和苗条框架JWT身份验证和令牌刷新流程

JWT身份验证和刷新令牌实现

正确的JWT身份验证架构和流程

Google Actions身份验证流程未发送JWT令牌,如何验证提供的令牌?

是否应使用与访问令牌不同的秘密对JWT身份验证方案中的刷新令牌进行签名?

使用Spring和JWT进行基于令牌的身份验证

从成功的身份验证返回JWT令牌

JWT 令牌未通过身份验证

使用密码和访问 + 刷新令牌进行身份验证

使用Jwt的基于令牌的身份验证无法授权

JWT身份验证-防止JWT令牌被盗

关于访问、ID 和刷新 JWT 身份验证的混淆

使用JWT进行跨域身份验证的单点登录流程

Laravel JWT令牌在身份验证JWT方法中刷新后无效

VueJS / Vuex应用-验证用于身份验证的JWT令牌

如何获取和使用JHipster微服务JWT的身份验证令牌

使用OWIN JWT承载身份验证来验证RS256签名的JWT令牌

刷新JWT Angular身份验证

具有相同JWT令牌的MQTT身份验证

带有JWT Bearer令牌的身份验证Swagger

基于令牌的身份验证与JWT还是护照laravel?

如何添加JWT令牌身份验证以保护路由

Firebase JWT身份验证,是否继续发送令牌?

springboot-基本的ActiveDirectory身份验证,然后是JWT令牌

用于跨域身份验证的JWT令牌

JWT承载身份验证不从标头读取令牌

JWT令牌反应式身份验证错误

Istio JWT身份验证传递没有令牌的流量

Laravel 5.2基于令牌的身份验证与JWT