keystoneauth1.identity.v3.multi_factor module

class keystoneauth1.identity.v3.multi_factor.MultiFactor(auth_url: str, auth_methods: List[str], *, unscoped: bool = False, trust_id: str | None = None, system_scope: str | None = None, domain_id: str | None = None, domain_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, reauthenticate: bool = True, include_catalog: bool = True, **kwargs: Any)

Bases: Auth

A plugin for authenticating with multiple auth methods.

Parameters:
  • auth_url (string) – Identity service endpoint for authentication.

  • auth_methods (string) – names of the methods to authenticate with.

  • trust_id (string) – Trust ID for trust scoping.

  • system_scope (string) – System information to scope to.

  • domain_id (string) – Domain ID for domain scoping.

  • domain_name (string) – Domain name for domain scoping.

  • project_id (string) – Project ID for project scoping.

  • project_name (string) – Project name for project scoping.

  • project_domain_id (string) – Project’s domain ID for project.

  • project_domain_name (string) – Project’s domain name for project.

  • reauthenticate (bool) – Allow fetching a new token if the current one is going to expire. (optional) default True

Also accepts various keyword args based on which methods are specified.

__abstractmethods__ = frozenset({})
__annotations__ = {'MIN_TOKEN_LIFE_SECONDS': 'int', '_discovery_cache': 'ty.Dict[str, discover.Discover]', 'auth_ref': 'ty.Optional[access.AccessInfo]', 'auth_url': 'str', 'reauthenticate': 'bool'}
__doc__ = "A plugin for authenticating with multiple auth methods.\n\n    :param string auth_url: Identity service endpoint for authentication.\n    :param string auth_methods: names of the methods to authenticate with.\n    :param string trust_id: Trust ID for trust scoping.\n    :param string system_scope: System information to scope to.\n    :param string domain_id: Domain ID for domain scoping.\n    :param string domain_name: Domain name for domain scoping.\n    :param string project_id: Project ID for project scoping.\n    :param string project_name: Project name for project scoping.\n    :param string project_domain_id: Project's domain ID for project.\n    :param string project_domain_name: Project's domain name for project.\n    :param bool reauthenticate: Allow fetching a new token if the current one\n                                is going to expire. (optional) default True\n\n    Also accepts various keyword args based on which methods are specified.\n    "
__init__(auth_url: str, auth_methods: List[str], *, unscoped: bool = False, trust_id: str | None = None, system_scope: str | None = None, domain_id: str | None = None, domain_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, reauthenticate: bool = True, include_catalog: bool = True, **kwargs: Any)
__module__ = 'keystoneauth1.identity.v3.multi_factor'
_abc_impl = <_abc._abc_data object>
_discovery_cache: ty.Dict[str, discover.Discover]
auth_ref: ty.Optional[access.AccessInfo]
auth_url: str
reauthenticate: bool