1 OAuth2.0(Open Authorization)
作用:
授权认证
常用场景:
1 A系统想获取B系统的信息使用(微信扫码抽奖,获取微信好友信息)
2 A系统借助B系统进行系统注册登录(微信QQ登录)
大概流程:
1, A向B申请登记,获得id和secret
2, A带着id,重定向地址等参数向B获取授权码
3, A在重定向界面获取授权码
4, A带着授权码向B获取Token
5, A带着Token向B获取特定信息
6, 业务…
注意点:
OAuth2.0有四种授权模式,适合不同使用场景,常用授权码模式(安全性高)
参考:
OAuth2.0 阮一峰
OAuth2.0认证和授权机制讲解
OAuth2.0微信登录 图解
聊一聊第三方登录:
A系统需要账号来管理不同的用户,借助B系统授权登录可以简化注册登录步骤,向B系统获取唯一id,并生成A系统的唯一id,将两者的唯一id进行关联;用户将使用A系统的唯一id进行不同的用户管理,并使用B系统中的id进行关联
2 JWT(JSON Web Token)
JSON Web Token 入门教程 - 阮一峰的网络日志
JWT(Json WEB Token)生成以及与session的区别
token和session区别
- token 将认证信息放在放在浏览器中,session放在后端内存中(后端压力小,可以负载均衡扩展)
- token是json格式,跨语言
- 可以自定义存放信息
3 框架
- SpringSecurity
- Apache Shiro
- IdentityServer