jwt token
Posted wjun0
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jwt token相关的知识,希望对你有一定的参考价值。
1 ,session 认证机制:
1,用户登录,传递用户名和密码给客户端 2,服务器进行用户名和密码的校验,如果校验成功,将用户保存到session 3,将sessionid通过cookie返回给客服端,客服端会保存sessionID 4,客服端再次访问服务器,会携带cookie:sessionID ,服务端就可以获取对应的session信息,然后对用户的身份进行校验
session认证存在的问题:
1,session 信息存放在服务器端,如果用户过多,就占用过多的服务器的存储空间
2,session 依赖于cookie,如果cookie被截获,可能产生csrf跨站请求伪造
3,在分布式网站应用中,如果session存储到服务器的内存,session共享会用问题
2 ,jwt 认证机制
jwt token 组成:
字符串,由头部(header),载荷(payload)和签名(signatrue)3部分组成,用.隔开(点号)
1,头部(header):存储的是token类型和签名加密的算法
{‘token类型’,‘签名加密算法’} 对头部内容使用base64进行加密,生成的就是header
2,载荷(payload):存储有效的数据和token的有效时间
{"user_id": "用户id",
"username": "用户名"
"mobile": "15211111111"
...
"exp": "token有效时间"}
对载荷内容进行base64加密,生成的内容就是payload
3,签名(signature):作用:防止jwt token 被伪造
-
payload载荷不要存过于敏感数据
-
服务器需要保存好签名加密密钥
-
可以使用安全网络协议:https
jwt扩展使用:
? 功能:生成jwt token和校验jwt token
以上是关于jwt token的主要内容,如果未能解决你的问题,请参考以下文章
AttributeError: ‘str‘ object has no attribute ‘decode‘解决方法