The recommended way to authenticate with ARM is via the get_azure_login function, which creates a new instance of this class.
tenant: Your tenant ID. This can be a name ("myaadtenant"), a fully qualified domain name ("myaadtenant.onmicrosoft.com" or "mycompanyname.com"), or a GUID.
app: The client/app ID to use to authenticate with Azure Active Directory. The default is to login interactively using the Azure CLI cross-platform app, but it's recommended to supply your own app credentials if possible.
password: if auth_type == "client_credentials", the app secret; if auth_type == "resource_owner", your account password.
username: if auth_type == "resource_owner", your username.
certificate: If `auth_type == "client_credentials", a certificate to authenticate with. This is a more secure alternative to using an app secret.
auth_type: The OAuth authentication method to use, one of "client_credentials", "authorization_code", "device_code" or "resource_owner". See get_azure_token for how the default method is chosen, along with some caveats.
version: The Azure Active Directory version to use for authenticating.
host: your ARM host. Defaults to https://management.azure.com/. Change this if you are using a government or private cloud.
aad_host: Azure Active Directory host for authentication. Defaults to https://login.microsoftonline.com/. Change this if you are using a government or private cloud.
...: Further arguments to pass to get_azure_token.
scopes: The Azure Service Management scopes (permissions) to obtain for this login. Only for version=2.
token: Optionally, an OAuth 2.0 token, of class AzureAuth::AzureToken. This allows you to reuse the authentication details for an existing session. If supplied, all other arguments will be ignored.