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