模型
- class oauth2_provider.models.AbstractAccessToken(*args, **kwargs)
AccessToken实例表示用于访问用户资源的实际访问令牌,如 RFC6749 Section 5 。
字段:
user代表资源“所有者”的Django用户source_refresh_token如果来自刷新,则消耗的RefeshTokentoken访问令牌application应用程序实例expires令牌到期的日期和时间,日期时间格式scope允许的作用域
- allow_scopes(scopes)
检查令牌是否允许提供的作用域
- 参数:
scopes -- 包含要检查的作用域的迭代数
- is_expired()
使用时区感知功能检查令牌过期
- is_valid(scopes=None)
检查访问令牌是否有效。
- 参数:
scopes -- 包含要检查或不检查的作用域的迭代数
- revoke()
统一令牌的便捷方法“接口,现在只需将该令牌从数据库中删除即可撤销它。
- property scopes
返回允许的作用域名(作为键)及其描述(作为值)的字典
- class oauth2_provider.models.AbstractApplication(*args, **kwargs)
应用程序实例表示授权服务器上的客户端。通常,应用程序是由客户端的开发人员在登录到授权服务器后手动创建的。
字段:
client_id期间颁发给客户端的客户端标识符注册流程,如中所述 RFC6749 Section 2.2
user参考Django用户redirect_uris允许的重定向URI列表。这根弦由用空格分隔的有效URL组成
post_logout_redirect_uris之后允许的重定向URI列表RP启动了注销。该字符串由用空格分隔的有效URL组成
client_typeClient type as described in RFC6749 Section 2.1authorization_grant_type可用于的授权流应用
client_secret在此期间向客户发布的机密中所述的注册流程 RFC6749 Section 2.2
name应用程序的友好名称
- clean()
用于在self.lean_field对每个字段调用lean()之后执行任何额外的模型范围验证的挂钩。此方法引发的任何ValidationError将不与特定字段关联;它将与由NON_FIELD_ERROR定义的字段有特殊关联。
- property default_redirect_uri
返回默认的reDirect_uri, if 只有一家是注册的。
- get_allowed_schemes()
返回应用程序允许的重定向方案列表。默认情况下,返回 ALLOWED_REDIRECT_URI_SCHEMES 。
- is_usable(request)
确定是否可以使用该应用程序。
- 参数:
request -- 正在处理的oauthlib.Common.Request.
- origin_allowed(origin)
检查给定来源是否为中的项目之一
allowed_origins细绳- 参数:
origin -- 要检查的原点
- post_logout_redirect_uri_allowed(uri)
检查给定的URI是否为
post_logout_redirect_uris细绳- 参数:
uri -- 要检查的URI
- redirect_uri_allowed(uri)
检查给定的url是否为
redirect_uris细绳- 参数:
uri -- 要检查的URL
- class oauth2_provider.models.AbstractGrant(*args, **kwargs)
Grant实例表示生存期较短的令牌,可交换为访问令牌,如中所述 RFC6749 Section 4.1.2
字段:
user请求授权的Django用户code授权服务器生成的授权码application应用程序实例请求此授权expires过期时间,以秒为单位,默认为settings.AUTHORIZATION_CODE_EXPIRE_SECONDS
redirect_uri不言而喻scope必需的作用域,可选code_challengePKCE代码挑战code_challenge_methodPKCE代码挑战转换算法
- is_expired()
使用时区感知功能检查令牌过期
- class oauth2_provider.models.AbstractIDToken(*args, **kwargs)
IDToken实例表示用于访问用户资源的实际令牌,如 :openid:`2` 。
字段:
user代表资源所有者的Django用户jtiID令牌JWT令牌ID,用于标识单个令牌application应用程序实例expires令牌到期的日期和时间,日期时间格式scope允许的作用域created令牌创建的日期和时间,日期时间格式updated令牌更新的日期和时间,日期时间格式
- allow_scopes(scopes)
检查令牌是否允许提供的作用域
- 参数:
scopes -- 包含要检查的作用域的迭代数
- is_expired()
使用时区感知功能检查令牌过期
- is_valid(scopes=None)
检查访问令牌是否有效。
- 参数:
scopes -- 包含要检查或不检查的作用域的迭代数
- revoke()
统一令牌接口的便捷方法,目前只需将该令牌从数据库中删除以撤销它。
- property scopes
返回允许的作用域名(作为键)及其描述(作为值)的字典
- class oauth2_provider.models.AbstractRefreshToken(*args, **kwargs)
刷新令牌实例表示一个令牌,该令牌在到期时可以交换为新的访问令牌。
字段:
user代表资源“所有者”的Django用户token令牌值application应用程序实例access_tokenAccessToken实例此刷新令牌为有界于
revoked此刷新令牌被吊销的时间戳
- revoke()
将此刷新令牌标记为已吊销,并吊销相关访问令牌
- class oauth2_provider.models.AccessToken(id, user, source_refresh_token, token, id_token, application, expires, scope, created, updated)
- exception DoesNotExist
- exception MultipleObjectsReturned
- class oauth2_provider.models.Application(id, client_id, user, redirect_uris, post_logout_redirect_uris, client_type, authorization_grant_type, client_secret, hash_client_secret, name, skip_authorization, created, updated, algorithm, allowed_origins)
- exception DoesNotExist
- exception MultipleObjectsReturned
- class oauth2_provider.models.ClientSecretField(*args, db_collation=None, **kwargs)
- pre_save(model_instance, add)
在保存前返回字段的值。
- class oauth2_provider.models.Grant(id, user, code, application, expires, redirect_uri, scope, created, updated, code_challenge, code_challenge_method, nonce, claims)
- exception DoesNotExist
- exception MultipleObjectsReturned
- class oauth2_provider.models.IDToken(id, user, jti, application, expires, scope, created, updated)
- exception DoesNotExist
- exception MultipleObjectsReturned
- class oauth2_provider.models.RefreshToken(id, user, token, application, access_token, created, updated, revoked)
- exception DoesNotExist
- exception MultipleObjectsReturned
- oauth2_provider.models.get_access_token_admin_class()
返回在此项目中处于活动状态的AccessToken管理类。
- oauth2_provider.models.get_access_token_model()
返回此项目中处于活动状态的AccessToken模型。
- oauth2_provider.models.get_application_admin_class()
返回在此项目中处于活动状态的应用程序管理员类。
- oauth2_provider.models.get_application_model()
返回此项目中处于活动状态的应用程序模型。
- oauth2_provider.models.get_grant_admin_class()
返回在此项目中处于活动状态的Grant管理类。
- oauth2_provider.models.get_grant_model()
返回在此项目中处于活动状态的Grant模型。
- oauth2_provider.models.get_id_token_admin_class()
返回在此项目中处于活动状态的IDToken管理类。
- oauth2_provider.models.get_id_token_model()
返回此项目中处于活动状态的AccessToken模型。
- oauth2_provider.models.get_refresh_token_admin_class()
返回在此项目中处于活动状态的REFREFRESH Token管理类。
- oauth2_provider.models.get_refresh_token_model()
返回在此项目中处于活动状态的刷新令牌模型。
- oauth2_provider.models.is_origin_allowed(origin, allowed_origins)
根据提供的Allowed_Origins配置检查是否允许给定源URI。
- 参数:
origin -- 要检查的源URI
allowed_origins -- 允许的源URI列表
- oauth2_provider.models.redirect_to_uri_allowed(uri, allowed_uris)
检查是否可以根据提供的Allowed_URI配置重定向到给定的URI。
除了精确匹配之外,此函数还处理基于RFC 8252的环回IP。
- 参数:
uri -- 要检查的URI
allowed_uris -- 允许的URI列表