keystoneauth1.identity.generic 包

子模块

模块内容

class keystoneauth1.identity.generic.BaseGenericPlugin(auth_url: str | None = None, *, tenant_id: str | None = None, tenant_name: str | None = None, project_id: str | None = None, project_name: str | None = None, project_domain_id: str | None = None, project_domain_name: str | None = None, domain_id: str | None = None, domain_name: str | None = None, system_scope: str | None = None, trust_id: str | None = None, default_domain_id: str | None = None, default_domain_name: str | None = None, reauthenticate: bool = True)

基础: BaseIdentityPlugin

一个不依赖版本的身份验证插件。

内部我们将使用解析后的 URL 构建一个依赖版本的插件,然后将来自基础插件的所有调用代理到版本化的插件。

__abstractmethods__ = frozenset({'create_plugin', 'get_cache_id_elements'})
__annotations__ = {'MIN_TOKEN_LIFE_SECONDS': 'int', '_discovery_cache': 'dict[str, discover.Discover]', '_plugin': 'v2.Auth | v3.Auth | None', 'auth_ref': 'access.AccessInfo | None', 'auth_url': <class 'str'>, 'reauthenticate': 'bool'}
__doc__ = '一个 身份 插件 ,它 依赖 版本。\n\n    内部 ,我们将 构建 一个 依赖 版本的 插件 ,并 使用 解析后的\n    URL ,然后 所有 调用 基本 插件 代理 版本化的 插件。\n    '
__init__(auth_url: str | None = None, *, tenant_id: str | None = None, tenant_name: str | None = None, project_id: str | None = None, project_name: str | None = None, project_domain_id: str | None = None, project_domain_name: str | None = None, domain_id: str | None = None, domain_name: str | None = None, system_scope: str | None = None, trust_id: str | None = None, default_domain_id: str | None = None, default_domain_name: str | None = None, reauthenticate: bool = True)
__module__ = 'keystoneauth1.identity.generic.base'
_abc_impl = <_abc._abc_data object>
_do_create_plugin(session: Session) Auth | Auth
property _has_domain_scope: bool

是否有域参数。

域参数仅适用于 v3,因此如果设置了任何参数,则返回 True。

返回值:

如果设置了域参数,则返回 True,否则返回 False。

auth_url: str
abstract create_plugin(session: Session, version: tuple[int | float, ...], url: str, raw_status: str | None = None) None | Auth | Auth

创建一个插件,基于给定的参数。

此函数将多次调用,并带有潜在终结点的版本和 URL。如果可以构造一个符合参数的插件,则应返回它。如果不能,则将进行另一个调用,并使用其他可用的 URL。

参数:
  • session (keystoneauth1.session.Session) – 一个会话对象。

  • version (tuple) – URL 处的 API 版本的元组。

  • url (str) – 此版本的基本 URL。

  • raw_status (str) – 发现字段中的状态。

返回值:

一个可以匹配参数的插件,或者如果没有任何匹配项则返回 None。

get_auth_ref(session: Session) AccessInfo

从 OpenStack Identity 服务获取令牌。

此方法由各种令牌版本插件覆盖。

不应独立调用此函数,并预计通过 do_authenticate 函数调用。

如果插件缓存的 AccessInfo 对象无效,将调用此函数。因此,插件应始终在调用时获取新的 AccessInfo。如果您只想检索当前的身份验证数据,则应使用 get_access。

参数:

session (keystoneauth1.session.Session) – 可以用于通信的会话对象。

引发:
返回值:

令牌访问信息。

返回类型:

keystoneauth1.access.AccessInfo

abstract get_cache_id_elements() dict[str, str | None]

获取使此身份验证插件唯一化的元素。

作为 get_cache_id 要求的一部分,我们需要确定此插件及其值的哪些方面构成唯一的元素。

插件希望允许缓存时应覆盖此方法。

返回值:

此插件的唯一属性和值。

返回类型:

一个扁平的字典,其中包含一个 str 键和一个 str 或 None 值。这需要我们将这些值馈送到哈希中。值为空的对在哈希 ID 中被忽略。

property project_domain_id: str | None
property project_domain_name: str | None
class keystoneauth1.identity.generic.Password(auth_url: str, username: str | None = None, user_id: str | None = None, password: str | None = None, user_domain_id: str | None = None, user_domain_name: str | None = None, *, tenant_id: str | None = None, tenant_name: str | None = None, project_id: str | None = None, project_name: str | None = None, project_domain_id: str | None = None, project_domain_name: str | None = None, domain_id: str | None = None, domain_name: str | None = None, system_scope: str | None = None, trust_id: str | None = None, default_domain_id: str | None = None, default_domain_name: str | None = None, reauthenticate: bool = True)

继承自: BaseGenericPlugin

一个通用的用户名/密码身份验证插件。

参数:
  • username (string) – 身份验证的用户名。

  • user_id (字符串) – 用于身份验证的用户 ID。

  • password (string) – 身份验证的密码。

  • user_domain_id (字符串) – 用于身份验证的用户的域 ID。

  • user_domain_name (字符串) – 用于身份验证的用户的域名称。

__abstractmethods__ = frozenset({})
__annotations__ = {'MIN_TOKEN_LIFE_SECONDS': 'int', '_discovery_cache': 'dict[str, discover.Discover]', '_plugin': 'v2.Auth | v3.Auth | None', 'auth_ref': 'access.AccessInfo | None', 'auth_url': 'str', 'reauthenticate': 'bool'}
__doc__ = "一个 通用的 用户名/密码 认证插件。\n\n    :param 字符串 username: 用于认证的用户名。\n    :param 字符串 user_id: 用于认证的用户ID。\n    :param 字符串 password: 用于认证的密码。\n    :param 字符串 user_domain_id: 用于认证的用户域ID。\n    :param 字符串 user_domain_name: 用于认证的用户域名称。\n    "
__init__(auth_url: str, username: str | None = None, user_id: str | None = None, password: str | None = None, user_domain_id: str | None = None, user_domain_name: str | None = None, *, tenant_id: str | None = None, tenant_name: str | None = None, project_id: str | None = None, project_name: str | None = None, project_domain_id: str | None = None, project_domain_name: str | None = None, domain_id: str | None = None, domain_name: str | None = None, system_scope: str | None = None, trust_id: str | None = None, default_domain_id: str | None = None, default_domain_name: str | None = None, reauthenticate: bool = True)
__module__ = 'keystoneauth1.identity.generic.password'
_abc_impl = <_abc._abc_data object>
_discovery_cache: dict[str, discover.Discover]
_plugin: v2.Auth | v3.Auth | None
auth_ref: access.AccessInfo | None
auth_url: str
create_plugin(session: Session, version: tuple[int | float, ...], url: str, raw_status: str | None = None) None | Password | Password

创建一个插件,基于给定的参数。

此函数将多次调用,并带有潜在终结点的版本和 URL。如果可以构造一个符合参数的插件,则应返回它。如果不能,则将进行另一个调用,并使用其他可用的 URL。

参数:
  • session (keystoneauth1.session.Session) – 一个会话对象。

  • version (tuple) – URL 处的 API 版本的元组。

  • url (str) – 此版本的基本 URL。

  • raw_status (str) – 发现字段中的状态。

返回值:

一个可以匹配参数的插件,或者如果没有任何匹配项则返回 None。

get_cache_id_elements() dict[str, str | None]

获取使此身份验证插件唯一化的元素。

作为 get_cache_id 要求的一部分,我们需要确定此插件及其值的哪些方面构成唯一的元素。

插件希望允许缓存时应覆盖此方法。

返回值:

此插件的唯一属性和值。

返回类型:

一个扁平的字典,其中包含一个 str 键和一个 str 或 None 值。这需要我们将这些值馈送到哈希中。值为空的对在哈希 ID 中被忽略。

reauthenticate: bool
property user_domain_id: str | None
property user_domain_name: str | None
class keystoneauth1.identity.generic.Token(auth_url: str, token: str, *, tenant_id: str | None = None, tenant_name: str | None = None, project_id: str | None = None, project_name: str | None = None, project_domain_id: str | None = None, project_domain_name: str | None = None, domain_id: str | None = None, domain_name: str | None = None, system_scope: str | None = None, trust_id: str | None = None, default_domain_id: str | None = None, default_domain_name: str | None = None, reauthenticate: bool = True)

继承自: BaseGenericPlugin

通用 Token 认证插件。

参数:

token (字符串) – 用于认证的 Token。

__abstractmethods__ = frozenset({})
__annotations__ = {'MIN_TOKEN_LIFE_SECONDS': 'int', '_discovery_cache': 'dict[str, discover.Discover]', '_plugin': 'v2.Auth | v3.Auth | None', 'auth_ref': 'access.AccessInfo | None', 'auth_url': 'str', 'reauthenticate': 'bool'}
__doc__ = '通用 Token 认证插件。\n\n    :参数 字符串 token: 用于认证的 Token。\n    '
__init__(auth_url: str, token: str, *, tenant_id: str | None = None, tenant_name: str | None = None, project_id: str | None = None, project_name: str | None = None, project_domain_id: str | None = None, project_domain_name: str | None = None, domain_id: str | None = None, domain_name: str | None = None, system_scope: str | None = None, trust_id: str | None = None, default_domain_id: str | None = None, default_domain_name: str | None = None, reauthenticate: bool = True)
__module__ = 'keystoneauth1.identity.generic.token'
_abc_impl = <_abc._abc_data object>
_discovery_cache: dict[str, discover.Discover]
_plugin: v2.Auth | v3.Auth | None
auth_ref: access.AccessInfo | None
auth_url: str
create_plugin(session: Session, version: tuple[int | float, ...], url: str, raw_status: str | None = None) None | Token | Token

创建一个插件,基于给定的参数。

此函数将多次调用,并带有潜在终结点的版本和 URL。如果可以构造一个符合参数的插件,则应返回它。如果不能,则将进行另一个调用,并使用其他可用的 URL。

参数:
  • session (keystoneauth1.session.Session) – 一个会话对象。

  • version (tuple) – URL 处的 API 版本的元组。

  • url (str) – 此版本的基本 URL。

  • raw_status (str) – 发现字段中的状态。

返回值:

一个可以匹配参数的插件,或者如果没有任何匹配项则返回 None。

get_cache_id_elements() dict[str, str | None]

获取使此身份验证插件唯一化的元素。

作为 get_cache_id 要求的一部分,我们需要确定此插件及其值的哪些方面构成唯一的元素。

插件希望允许缓存时应覆盖此方法。

返回值:

此插件的唯一属性和值。

返回类型:

一个扁平的字典,其中包含一个 str 键和一个 str 或 None 值。这需要我们将这些值馈送到哈希中。值为空的对在哈希 ID 中被忽略。

reauthenticate: bool