基于类的视图的混合

class oauth2_provider.views.mixins.ClientProtectedResourceMixin

混合使用RFC:`3.2.1`中提到的客户端身份验证来保护资源。这涉及到使用以下任何一种身份验证进行身份验证:HTTP基本身份验证、客户端凭据和访问令牌。在第一次验证后中断。

class oauth2_provider.views.mixins.OAuthLibMixin

这种混合将Django OAuth工具包从OAuthLib中分离出来。

用户可以通过设置以下类变量来配置此Mixin使用的Server、Validator和OAuthlibCore类:

  • server_class

  • validator_class

  • oauthlib_backend_class

如果未设置这些类变量,它将回退到使用OAuth2_设置中指定的类(OAuth2_SERVER_CLASS、OAUT2_VALIDATOR_CLASS和OAUT2_BACKEND_CLASS)。

authenticate_client(request)

返回一个布尔值,表示是否使用客户端凭据方法对客户端进行身份验证。退货 True 如果通过身份验证。

参数:

request -- 当前的django.HTTP.HttpRequest对象

create_authorization_response(request, scopes, credentials, allow)

调用CREATE_AUTHORIZATION_RESPONSE server_class 举个例子。

参数:
  • request -- 当前的django.HTTP.HttpRequest对象

  • scopes -- 以空格分隔的提供作用域的字符串

  • credentials -- 授权凭据字典包含 client_idstateredirect_uriresponse_type

  • allow -- 如果用户授权客户端,则为True,否则为False

create_revocation_response(request)

一个包装方法,该方法调用 server_class 举个例子。

参数:

request -- 当前的django.HTTP.HttpRequest对象

create_token_response(request)

调用Create_Token_Response的包装方法 server_class 举个例子。

参数:

request -- 当前的django.HTTP.HttpRequest对象

create_userinfo_response(request)

一个包装器方法,该方法调用 server_class 举个例子。

参数:

request -- 当前的django.HTTP.HttpRequest对象

error_response(error, **kwargs)

如果出现任何错误,则返回要向资源所有者显示的错误。

参数:

error -- OAuthToolkitError

classmethod get_oauthlib_backend_class()

返回要使用的OAuthLibCore实现类

classmethod get_oauthlib_core()

缓存并返回 OAuthlibCore 实例,因此除非ALWAYS_RELOAD_OAUTHLIB_CORE为True,否则将仅在第一次请求时创建它。

get_scopes()

这应该返回访问资源所需的作用域的列表。默认情况下,它返回一个空列表。

classmethod get_server()

返回的实例 server_class 被初始化为 validator_class 对象

classmethod get_server_class()

返回要使用的OAuthlib服务器类

classmethod get_validator_class()

返回要使用的RequestValidator实现类

validate_authorization_request(request)

上调用VALIDATE_AUTHORIZATION_REQUEST的包装方法 server_class 举个例子。

参数:

request -- 当前的django.HTTP.HttpRequest对象

verify_request(request)

调用Verify_RequestOn的包装方法 server_class 举个例子。

参数:

request -- 当前的django.HTTP.HttpRequest对象

class oauth2_provider.views.mixins.OIDCLogoutOnlyMixin

仅当启用OIDC和OIDC RP启动的注销时才能访问的视图的混合。

如果其中一项未启用:

  • 如果DEBUG为True,则引发错误配置异常,解释原因

  • 否则,返回404响应,并记录相同的警告

class oauth2_provider.views.mixins.OIDCOnlyMixin

仅在启用OIDC时才能访问的视图的混合。

如果未启用OIDC:

  • 如果DEBUG为True,则引发错误配置异常,解释原因

  • 否则,返回404响应,并记录相同的警告

class oauth2_provider.views.mixins.ProtectedResourceMixin

在请求分派时实现OAuth2保护的Helper Mixin,特别适用于Django通用视图

class oauth2_provider.views.mixins.ReadWriteScopedResourceMixin(*args, **kwargs)

实现“读写作用域”行为的帮助器混合

get_scopes(*args, **kwargs)

返回访问资源所需的作用域

参数:

args -- 支持外部注入作用域(尚未实现)

class oauth2_provider.views.mixins.ScopedResourceMixin

实现“作用域处理”行为的帮助器混合

get_scopes(*args, **kwargs)

返回访问资源所需的作用域

参数:

args -- 支持外部注入作用域(尚未实现)