10.2.6.2. REST Credentials Authentication Method

class pytan3.auth_methods.RestCredentials(http_client, username, password, domain='', secondary='', login_timeout=5, logout_timeout=5, expires_after=295, ver_check=True, lvl='info')[source]

Bases: pytan3.auth_methods.CommonMixin, pytan3.auth_methods.AuthMethod

Method that uses credentials to interact with the REST ‘session’ API.

__init__(http_client, username, password, domain='', secondary='', login_timeout=5, logout_timeout=5, expires_after=295, ver_check=True, lvl='info')[source]

Constructor.

Parameters:
  • http_client (pytan3.http_client.HttpClient) – HTTP client.
  • username (str) – Header to pass to /api/v2/session REST API.
  • password (str) – Header to pass to /api/v2/session REST API.
  • domain (str, optional) –

    Header to pass to /api/v2/session REST API.

    Defaults to: “”

  • secondary (str, optional) –

    Header to pass to /api/v2/session REST API.

    Defaults to: “”

  • login_timeout (int, optional) –

    Timeout for login and validate responses in seconds.

    Defaults to: 5.

  • logout_timeout (int, optional) –

    Timeout for logout responses in seconds.

    Defaults to: 5.

  • expires_after (int, optional) –

    Life of received tokens in seconds.

    Defaults to: 295.

  • ver_check (bool, optional) –

    Perform version checks against the platform version from pytan3.api_clients.get_version() using pytan3.utils.versions.version_check_obj_req().

    Defaults to: True.

  • lvl (str, optional) –

    Logging level.

    Defaults to: “info”.

classmethod get_name()[source]

Get the ref name of this class for use by load().

Returns:str
classmethod get_version_req()[source]

Get the min, max, and eq version requirements of this class.

Notes

Dict can specify keys: “vmin”, “vmax”, “veq”.

This class method gets called by pytan3.utils.versions.version_check_obj_req() to perform version checks.

Returns:dict
classmethod get_args()[source]

Get all arguments used by this class.

Returns:list
classmethod get_args_required()[source]

Get all arguments used by this class that are required.

Returns:list
classmethod get_args_secure()[source]

Get all arguments used by this class that need their prompt input hidden.

Returns:list
_abc_impl = <_abc_data object>
rest_version

Version of REST API for this method.

Returns:int
login(**kwargs)[source]

Send a login request to receive a token.

Parameters:**kwargs

cause (str): String to explain purpose of request.

Defaults to: “Get new token”.

Raises:exceptions.LoginError – If status code in response is not 200.
Returns:str
logout(**kwargs)[source]

Send a logout request to revoke a token.

Parameters:

**kwargs

cause (str): String to explain purpose of request.

Defaults to: “Revoke token”.

Raises:
Returns:

None

logout_all(**kwargs)[source]

Send a logout request to revoke all tokens associated with this token.

Raises:NotImplementedError – REST ‘session’ endpoint does not have a logout all target.
validate(**kwargs)[source]

Send a validate request to check that token is still valid.

Parameters:

**kwargs

cause (str):

String to explain purpose of request.

Defaults to: “Validate token”.

Raises:
Returns:

str