客户端凭据授予

class oauthlib.oauth2.ClientCredentialsGrant(request_validator=None, **kwargs)[源代码]

Client Credentials Grant

当客户端请求访问其控制下的受保护资源时,客户端可以仅使用其客户端证书(或其他受支持的身份验证手段)来请求访问令牌,或者请求访问令牌是先前与授权服务器安排的另一资源所有者的访问(其方法超出了本说明书的范围)。

客户端凭据授予类型只能由机密客户端使用:

+---------+                                  +---------------+
:         :                                  :               :
:         :>-- A - Client Authentication --->: Authorization :
: Client  :                                  :     Server    :
:         :<-- B ---- Access Token ---------<:               :
:         :                                  :               :
+---------+                                  +---------------+

图6:客户端凭据流

图6所示的流程包括以下步骤:

  1. 客户端向授权服务器进行认证,并且

    从令牌终结点请求访问令牌。

  2. 授权服务器对客户端进行身份验证,如果有效,

    颁发访问令牌。

add_token(token, token_handler, request)
参数:
  • token --

  • token_handler -- 令牌处理程序实例,例如oauthlib.oauth2.BearerToken类型。

  • request (oauthlib.common.Request) -- OAuthlib请求。

create_authorization_response(request, token_handler)
参数:
  • request (oauthlib.common.Request) -- OAuthlib请求。

  • token_handler -- 令牌处理程序实例,例如oauthlib.oauth2.BearerToken类型。

create_token_response(request, token_handler)[源代码]

以JSON格式返回令牌或错误。

参数:
  • request (oauthlib.common.Request) -- OAuthlib请求。

  • token_handler -- 令牌处理程序实例,例如oauthlib.oauth2.BearerToken类型。

如果访问令牌请求有效且已授权,则授权服务器将发布访问令牌,如中所述 Section 5.1 。不应包括刷新令牌。如果请求未通过客户端身份验证或无效,授权服务器将返回错误响应,如中所述 Section 5.2

prepare_authorization_response(request, token, headers, body, status)

根据响应模式放置令牌。

基类可以为其授权响应定义默认响应模式,方法是重写 default_response_mode 成员。

参数:
  • request (oauthlib.common.Request) -- OAuthlib请求。

  • token --

  • headers --

  • body --

  • status --

validate_grant_type(request)
参数:

request (oauthlib.common.Request) -- OAuthlib请求。

validate_scopes(request)
参数:

request (oauthlib.common.Request) -- OAuthlib请求。

validate_token_request(request)[源代码]
参数:

request (oauthlib.common.Request) -- OAuthlib请求。