json web token前端鉴权流程(超容易理解)

919 阅读2分钟

json web token前端鉴权流程

1

jwt了解

JWT(JSON Web Token) 是一个开放标准协议,它定义了一种“紧凑”和“自包含”的方式,它用于各方之间作为JSON对象安全地传输信息。(相当于一串标识用于前后端安全交互使用

  1. 紧凑 数据量较少,并且能通过url参数,http请求提交的数据以及http header(请求头)的方式来传递。

  2. 自包含 这个串可以包含很多信息,比如用户ID,订单号ID等,如果被其他人拿到该信息,也就可以拿到关键业务信息。

jwt组成

  • Header(头部) :typ(Token的类型,JWT类型) + alg(Hash算法,‘HS256’)
  • Payload(负载):包含一些声明,用来存放实际需要传递的数据
  • Signature(签名):对上面两部分的签名,放篡改

2 例:

eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c

使用场景

  • 单点登录 只需要登录一次,就可以访问其他相互信任的应用系统。详解
  • 无感刷新token 用户浏览期间避免出现jwt过期进行登录情况,体验感不好,利用操作手段自动刷新jwt。详解

jwt认证流程

细品 :full_moon_with_face:

  1. 客户端发送登录信息(用户名+密码)给服务器
  2. 校验登录信息,使用密钥创建jwt;返回jwt给客户端
  3. 客户端获取jwt后,保存至本地
  4. 客户端再次请求API数据时,携带到request header(请求头)内的Authorization属性上,发给服务器
  5. 服务器拿到jwt后,检查jwt是否有效,从jwt中获取用户信息
  6. 校验成功,服务器返回数据给客户端(校验失败状态码401(未授权,没有权限))

4

到这里就结束了,后续还会更新 前端 系列相关,还请持续关注! 感谢阅读,若有错误可以在下方评论区留言哦!!!

111
推荐文章👇

JSON Web Token 入门教程

一文教你搞定所有前端鉴权与后端鉴权方案,让你不再迷惘