【笔记】JWT身份认证
前言
JWT(Json Web Token)与Session不同的是,Session是将用户登陆信息存储在服务器内存中,而JWT是将用户登陆信息加密后存储在客户端浏览器内存中
JWT的构成
- JWT的Token是由
Header
、Payload
、Signature
三部分组成,通过.
依次分隔:Header.Payload.Signature
,最终组成TokenPayload
用于存储加密后的用户的身份认证信息Header
和Signature
用来保证Token的安全性
JWT的使用方法
- 客户端收到服务端返回的Token之后,通常将Token存储在
localStorage
或sessionStorage
中 - 此后,客户端每次与服务端通信,都要将Token通过请求头的
Authorization
字段传递给后端,Authorization
字段值必须以Bearer
开头
<token>
:JWT加密字符串
1 | Authorization: Bearer <token> |
JWT的加解密
- JWT的加解密是在后段完成的,加解密时需要提供预先设定的密钥,只有相同密钥能进行对应Token的解密