www.7727s.com_金沙国际唯一官网_欢迎来访

OAuth 系列(五)客户端模式 Client Credentials

前面讲的三种模式都是面向用户的;
获取的 access_token 都有对应的 user ;
今天要讲的客户端模式获取的 access_token 则没有对应的 user ;
密码模式 相似的地方在于一般都是用于自己的应用;
不会给第三方开放客户端模式;
它的应用场景主要是机器或应用之间调用 api 访问数据;
简化模式 相似的地方在于同样只有 access_token 没有refresh_token ;

获取 Token

直接获取 Token ;
请求方式: POST
链接:http:// oauth.test/oauth/token
请求参数如下:

grant_type: client_credentials
scope: *

grant_type : 固定值为 client_credentials
scope : 要申请的权限
请求中没有任何关于用户的信息;
OAuth 协议中也没有明确要求如何认证;
但是获取 access_token 的这个接口必须要是受保护的;
协议的示例是使用 Authorization: Basic ;

     POST /token HTTP/1.1
     Host: server.example.com
     Authorization: Basic czZCaGRSa3F0MzpnWDFmQmF0M2JW
     Content-Type: application/x-www-form-urlencoded

     grant_type=client_credentials

请求的返回值如下:

{
  "token_type": "Bearer",
  "expires_in": xxx,
  "access_token": "xxx",
}

请求的返回值如下:
token_type 是 token 类型一般是 Bearer ;
expires_in 过期时间
access_token 用于访问资源的令牌

www.7727s.com博客
请先登录后发表评论
  • 最新评论
  • 总共0条评论
Baidu
sogou