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': '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\nAlso accepts various keyword args based on which methods are specified.\n"
__firstlineno__ = 23
__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'
__static_attributes__ = ()
_abc_impl = <_abc._abc_data object>
_discovery_cache: dict[str, discover.Discover]
auth_ref: ty.Optional[access.AccessInfo]
auth_url: str
reauthenticate: bool