JWT
在用户注册或登录后,我们想记录用户的登录状态,或者为用户创建身份认证的凭证。可以使用Json Web Token认证机制。
JWT是由三段信息构成的,将这三段信息文本用.链接一起就构成了Jwt字符串
如下:
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWV9.TJVA95OrM7E2cBab30RMHrHDcEfxjoYZgeFONFh7HgQ
分别为:
头部(header):进行base64加密后得到,可以对称解密
载荷(payload):载荷就是存放有效信息的地方,将其进行base64加密,得到JWT的第二部分
签证(signature):这个部分需要base64加密后的header和base64加密后的payload使用,连接组成的字符串,然后通过header中声明的加密方式进行加盐secret组合加密,然后就构成了jwt的第三部分
注意:secret是保存在服务器端的,jwt的签发生成也是在服务器端的,secret就是用来进行jwt的签发和jwt的验证,所以,它就是你服务端的私钥,在任何场景都不应该流露出去。一旦客户端得知这个secret, 那就意味着客户端是可以自我签发jwt了
应用流程: