目录
一,什么是OAuth2
OAuth2.0 是目前使用非常广泛的授权机制,用于授权第三方应用获取用户的数据。用户可以通过选择其他登录方式来使用 gitee ,这里就使用到了第三方认证。OAuth 引入了一个授权层,用来分离两种不同的角色:客户端和资源所有者。 ...... 资源所有者同意以后,资源服务器可以向客户端颁发令牌。客户端通过令牌,去请求数据。
二,OAuth2中的角色
1. 资源所有者(本人)能够授予对受保护资源的访问权限的实体,如果资源的所有者为个人,也被成为最终用户2. 资源服务器(APP)存储有受保护资源的服务器, 能够接受并验证访问令牌,并响应受保护资源的访问请求简单的说就是图片上所标记的地方
3. 客户(被授权的网站)需要被授权,然后再访问受保护资源的实体。客户这个术语,并不是特指应用程序,服务器,计算机 等。4. 授权服务器(指OAuth2)验证资源所有者并获取授权成功后,向客户发出访问令牌
三,认证流程
解释说明:
Client相当于正在使用的小程序
Resource Owner相当于本人的微信账号
Authorization Server相当于OAuth2
Resource Server 相当于微信
当使用者选择微信登入某小程序,小程序就会发送请求给使用者的微信账号,当使用者点击允许后,小程序拿到允许授权后就会将授权信息发送至OAuth2(也就是认证服务器),然后认证服务器得到信息后就会发送一个Token令牌给小程序,小程序在拿着这个Token令牌去请求微信,微信就会找到使用者的微信账号得知使用者已同意,然后微信就会允许小程序的一个登入。