DefaultAzureCredential Classe
Uma credencial padrão capaz de lidar com a maioria dos cenários de autenticação do SDK do Azure.
A identidade que ele usa depende do ambiente. Quando um token de acesso é necessário, ele solicita um usando essas identidades, parando quando um fornece um token:
Uma entidade de serviço configurada por variáveis de ambiente. Consulte EnvironmentCredential para obter mais detalhes.
WorkloadIdentityCredential se a configuração da variável de ambiente for definida pelo webhook de identidade de carga de trabalho do Azure.
Uma identidade gerenciada do Azure. Consulte ManagedIdentityCredential para obter mais detalhes.
Somente no Windows: um usuário que entrou com um aplicativo da Microsoft, como o Visual Studio. Se várias identidades estiverem no cache, o valor da variável
AZURE_USERNAME
de ambiente será usado para selecionar qual identidade usar. Consulte SharedTokenCacheCredential para obter mais detalhes.Atualmente, a identidade está conectada à CLI do Azure.
Atualmente, a identidade está conectada ao Azure PowerShell.
Atualmente, a identidade está conectada ao Azure Developer CLI.
Esse comportamento padrão é configurável com argumentos palavra-chave.
- Herança
-
azure.identity._credentials.chained.ChainedTokenCredentialDefaultAzureCredential
Construtor
DefaultAzureCredential(**kwargs: Any)
Parâmetros
- authority
- str
Autoridade de um ponto de extremidade do Azure Active Directory, por exemplo, "login.microsoftonline.com", a autoridade para a Nuvem Pública do Azure (que é o padrão). AzureAuthorityHosts define autoridades para outras nuvens. As identidades gerenciadas ignoram isso porque residem em uma única nuvem.
- exclude_workload_identity_credential
- bool
Se deseja excluir a identidade da carga de trabalho da credencial. O padrão é False.
- exclude_developer_cli_credential
- bool
Se deseja excluir o Azure Developer CLI da credencial. O padrão é False.
- exclude_cli_credential
- bool
Se deseja excluir a CLI do Azure da credencial. O padrão é False.
- exclude_environment_credential
- bool
Se deseja excluir uma entidade de serviço configurada por variáveis de ambiente da credencial. O padrão é False.
- exclude_managed_identity_credential
- bool
Se deseja excluir a identidade gerenciada da credencial. O padrão é False.
- exclude_powershell_credential
- bool
Se deseja excluir Azure PowerShell. O padrão é False.
- exclude_visual_studio_code_credential
- bool
Se deseja excluir a credencial armazenada do VS Code. O padrão é True.
- exclude_shared_token_cache_credential
- bool
Se deseja excluir o cache de token compartilhado. O padrão é False.
- exclude_interactive_browser_credential
- bool
Se deseja excluir a autenticação interativa do navegador (consulte InteractiveBrowserCredential). O padrão é True.
- interactive_browser_tenant_id
- str
ID do locatário a ser usada ao autenticar um usuário por meio de InteractiveBrowserCredential. O padrão é o valor da variável de ambiente AZURE_TENANT_ID, se houver. Se não for especificado, os usuários serão autenticados em seus locatários domésticos.
- managed_identity_client_id
- str
O ID do cliente de uma identidade gerenciada atribuída pelo usuário. O padrão é o valor da variável de ambiente AZURE_CLIENT_ID, se houver. Se não for especificado, uma identidade atribuída pelo sistema será usada.
- workload_identity_client_id
- str
A ID do cliente de uma identidade atribuída ao pod. O padrão é o valor da variável de ambiente AZURE_CLIENT_ID, se houver. Se não for especificado, a identidade padrão do pod será usada.
- workload_identity_tenant_id
- str
Locatário preferencial para WorkloadIdentityCredential. O padrão é o valor da variável de ambiente AZURE_TENANT_ID, se houver.
- interactive_browser_client_id
- str
A ID do cliente a ser usada na credencial interativa do navegador. Se não for especificado, os usuários serão autenticados em um aplicativo de desenvolvimento do Azure.
- shared_cache_username
- str
Nome de usuário preferencial para SharedTokenCacheCredential. O padrão é o valor da variável de ambiente AZURE_USERNAME, se houver.
- shared_cache_tenant_id
- str
Locatário preferencial para SharedTokenCacheCredential. O padrão é o valor da variável de ambiente AZURE_TENANT_ID, se houver.
- visual_studio_code_tenant_id
- str
ID do locatário a ser usada ao autenticar com VisualStudioCodeCredential. O padrão é a configuração "Azure: Locatário" nas configurações de usuário do VS Code ou, quando essa configuração não tem valor, o locatário "organizações", que dá suporte apenas a contas corporativas ou de estudante do Azure Active Directory.
- process_timeout
- int
O tempo limite em segundos a ser usado para credenciais de desenvolvedor que executam subprocessos (por exemplo, AzureCliCredential, AzurePowerShellCredential). O padrão é 10 segundos.
Exemplos
Crie um DefaultAzureCredential.
from azure.identity import DefaultAzureCredential
credential = DefaultAzureCredential()
Métodos
close |
Feche a sessão de transporte de cada credencial na cadeia. |
get_token |
Solicite um token de acesso para escopos. Esse método é chamado automaticamente por clientes do SDK do Azure. |
close
Feche a sessão de transporte de cada credencial na cadeia.
close() -> None
get_token
Solicite um token de acesso para escopos.
Esse método é chamado automaticamente por clientes do SDK do Azure.
get_token(*scopes: str, claims: str | None = None, tenant_id: str | None = None, **kwargs: Any) -> AccessToken
Parâmetros
- scopes
- str
escopos desejados para o token de acesso. Esse método requer pelo menos um escopo. Para obter mais informações sobre escopos, consulte https://learn.microsoft.com/azure/active-directory/develop/scopes-oidc.
- claims
- str
declarações adicionais necessárias no token, como as retornadas no desafio de declarações de um provedor de recursos após uma falha de autorização.
- tenant_id
- str
locatário opcional a ser incluído na solicitação de token.
Retornos
Um token de acesso com os escopos desejados.
Tipo de retorno
Exceções
falha na autenticação. A exceção tem um atributo de mensagem listando cada tentativa de autenticação e sua mensagem de erro.