troveclient.apiclient.auth 模块

class troveclient.apiclient.auth.BaseAuthPlugin(auth_system=None, **kwargs)

基类: object

身份验证插件的基类。

身份验证插件至少需要重写 authenticate 方法才能成为有效的插件。

classmethod add_common_opts(parser)

添加几个插件通用的选项。

classmethod add_opts(parser)

使用此插件的选项填充解析器。

auth_system = None
authenticate(http_client)

使用插件定义的身份验证方法进行身份验证。

该方法通常会分析 self.opts 并向身份验证服务器发送请求。

参数:

http_client (troveclient.client.HTTPClient) – 需要身份验证的客户端对象

引发:

AuthorizationFailure

common_opt_names = ['auth_system', 'username', 'password', 'tenant_name', 'token', 'auth_url']
static get_opt(opt_name, args)

返回选项名称和值。

参数:
  • opt_name – 选项名称,例如“username”

  • args – 解析后的参数

opt_names = []
parse_opts(args)

解析实际的身份验证系统选项(如果有)。

此方法预计会将属性 self.opts 填充为包含进行身份验证所需的选项和值的字典。

sufficient_options()

检查是否所有必需的选项都存在。

引发:

AuthPluginOptionsMissing

abstract token_and_endpoint(endpoint_type, service_type)

返回令牌和端点。

参数:
  • service_type (string) – 端点的服务类型

  • endpoint_type (string) – 端点类型。可能的值:public 或 publicURL,internal 或 internalURL,admin 或 adminURL

返回值:

令牌和端点字符串的元组

引发:

EndpointException

troveclient.apiclient.auth.discover_auth_systems()

发现可用的身份验证系统。

这不会考虑旧式身份验证系统。

troveclient.apiclient.auth.load_auth_system_opts(parser)

将可用身份验证系统所需的选项加载到解析器中。

此函数将尝试使用可用插件中的选项填充解析器。

troveclient.apiclient.auth.load_plugin(auth_system)
troveclient.apiclient.auth.load_plugin_from_args(args)

加载所需的插件并使用选项填充它。

如果未指定身份验证系统,则尝试猜测。系统按字母顺序尝试。

引发:

AuthPluginOptionsMissing