- 摘要:OAuth 协议是针对提供给第三方进行认证登陆的 ,目前非常流行该种认证授权方式 , OAuth 认证方式共分为四种,分别是:客户端模式、授权码模式、密码模式、简易模式。
- 我们可以从各大互联网巨头身上找到 OAuth 的影子,如:微信公众号、支付宝、快递鸟、CSDN等等。这一次我们将认识并了解其中的客户端模式 , 或者叫凭证模式 , 该模式非常的容易理解,且实用性相对较广。
一 使用场景
当对于我们针对一个非常信任的第三方去登陆时 , 可以采用这种模式。
例如:某服务方授权给第三方服务调用本地OpenAPI。
或者微信授权给公众号调用微信API。
二 使用方法
- 首先服务方要提供给第三方一个client_id 和 client_secret , 相当于公用的用户名密码。
- 接着第三方拿着client_id 和 client_secret 去服务方处换取令牌。
- 最后第三方拿着令牌去调用接口或获取数据。
三 实际操作
基本只需要提供两个接口 , 一个是获取令牌 , 一个是获取数据
## 第一步 获取令牌
## 我们后端拿着这个用户名密码进行比对 , 比对成功 ,返回 access_token
GET /token?
grant_type = client_credentials & ## 授权类型
client_id = {客户端身份ID} & ## 相当于用户名
client_secret = {客户端秘钥} ## 相当于密码
## 第二步 第三方拿着access_token 获取数据
## 后端验证access_token 存在 , 并且没有过期 , 就验证通过 , 返回数据
GET /user?
access_token = {令牌} &
uid = {用户ID}