oauth 2.0 定义了4种授权模式:
1.授权码模式:
- 用户点击微信授权登录;
- 用户浏览器重定向至微信开发平台用户授权地址 展示微信用户授权二维码(qq为用户名密码输入框);
- 微信客户端扫授权码授权;
- 微信开发平台验证微信用户身份正确性,正确的话返回临时凭证;
- 带着临时凭证到微信开发平台授权地址;
- 通过临时凭证换取access_token并管理;
- 返回access_token授权信息;
- 通过access_token访问资源接口,获取用户昵称、头像、性别等,完善用户注册逻辑,生成用户回话信息;
- 完成微信第三方授权登录;
2.简化模式:
认证服务器直接返回access_token令牌至用户浏览器端,而并没有先返回临时凭证;
3.用户名密码模式:
用户向客户端直接提供用户名、密码;
4.客户端模式:
用户直接向客户端注册;