常见的登录鉴权方式
JWT
- 组成
header
json
{
"alg":"HS256" ,
"typ": "JWT"
}
payload
json
{
"sub": "2020-01-22" // 过期时间
"name": "xxx",
"role": "xx"
}
signature
`` HMACSHA256( base64UrlEncode(header) + "." + base64UrlEncode(payload), your-256-bit-secret )
* 特点
1. 防CSRF(主要防伪造请求,带上cookie)
2. 适合移动应用
3. 无状态,编码数据
* 优点
1. 易扩展
2. 支持移动设备,跨平台调用
3. 安全
4. 承载信息丰富
* 缺点
1. 刷新和过期处理
2. payload不易过大
3. 中间人攻击
## session cookie
* 优点
简单、易扩展
* 缺点
1. 安全性低。
2. 性能低,服务端存储。
3. 多服务器同步session困难
4. 跨平台困难
## Oauth
* 优点
1. 开放
2. 安全
3. 简单
4. 权限指定
* 缺点
1. 需要增加授权服务器
2. 增加网络请求