DefaultAzureCredential Classe
Uma credencial predefinida capaz de processar a maioria dos cenários de autenticação do SDK do Azure.
A identidade que utiliza depende do ambiente. Quando é necessário um token de acesso, solicita um que utilize estas identidades por sua vez, parando quando um fornece um token:
Um principal de serviço configurado por variáveis de ambiente. Veja EnvironmentCredential para obter mais detalhes.
WorkloadIdentityCredential se a configuração da variável de ambiente for definida pelo webhook de identidade da carga de trabalho do Azure.
Uma identidade gerida do Azure. Veja ManagedIdentityCredential para obter mais detalhes.
Apenas no Windows: um utilizador que tenha iniciado sessão com uma aplicação Microsoft, como o Visual Studio. Se existirem múltiplas identidades na cache, o valor da variável
AZURE_USERNAME
de ambiente é utilizado para selecionar a identidade a utilizar. Veja SharedTokenCacheCredential para obter mais detalhes.A identidade atualmente com sessão iniciada na CLI do Azure.
A identidade atualmente iniciada no Azure PowerShell.
A identidade atualmente com sessão iniciada no Azure Developer CLI.
Este comportamento predefinido é configurável com argumentos de palavra-chave.
- Herança
-
azure.identity._credentials.chained.ChainedTokenCredentialDefaultAzureCredential
Construtor
DefaultAzureCredential(**kwargs: Any)
Parâmetros
- authority
- str
Autoridade de um ponto final do Azure Active Directory, por exemplo "login.microsoftonline.com", a autoridade para a Cloud Pública do Azure (que é a predefinição). AzureAuthorityHosts define as autoridades para outras clouds. As identidades geridas ignoram-no porque residem numa única cloud.
- exclude_workload_identity_credential
- bool
Se pretende excluir a identidade da carga de trabalho da credencial. A predefinição é Falso.
- exclude_developer_cli_credential
- bool
Se pretende excluir o Azure Developer CLI da credencial. A predefinição é Falso.
- exclude_cli_credential
- bool
Se pretende excluir a CLI do Azure da credencial. A predefinição é Falso.
- exclude_environment_credential
- bool
Se pretende excluir um principal de serviço configurado por variáveis de ambiente da credencial. A predefinição é Falso.
- exclude_managed_identity_credential
- bool
Se pretende excluir a identidade gerida da credencial. A predefinição é Falso.
- exclude_powershell_credential
- bool
Se pretende excluir Azure PowerShell. A predefinição é Falso.
- exclude_visual_studio_code_credential
- bool
Se pretende excluir credenciais armazenadas do VS Code. A predefinição é Verdadeiro.
- exclude_shared_token_cache_credential
- bool
Se pretende excluir a cache de tokens partilhados. A predefinição é Falso.
- exclude_interactive_browser_credential
- bool
Se pretende excluir a autenticação interativa do browser (veja InteractiveBrowserCredential). A predefinição é Verdadeiro.
- interactive_browser_tenant_id
- str
ID do inquilino a utilizar ao autenticar um utilizador através de InteractiveBrowserCredential. A predefinição é o valor da variável de ambiente AZURE_TENANT_ID, se existir. Se não for especificado, os utilizadores serão autenticados nos respetivos inquilinos domésticos.
- managed_identity_client_id
- str
O ID de cliente de uma identidade gerida atribuída pelo utilizador. A predefinição é o valor da variável de ambiente AZURE_CLIENT_ID, se existir. Se não for especificado, será utilizada uma identidade atribuída pelo sistema.
- workload_identity_client_id
- str
O ID de cliente de uma identidade atribuída ao pod. A predefinição é o valor da variável de ambiente AZURE_CLIENT_ID, se existir. Se não for especificado, será utilizada a identidade predefinida do pod.
- workload_identity_tenant_id
- str
Inquilino preferencial para WorkloadIdentityCredential. A predefinição é o valor da variável de ambiente AZURE_TENANT_ID, se existir.
- interactive_browser_client_id
- str
O ID de cliente a utilizar na credencial do browser interativo. Se não for especificado, os utilizadores serão autenticados numa aplicação de desenvolvimento do Azure.
- shared_cache_username
- str
Nome de utilizador preferencial para SharedTokenCacheCredential. A predefinição é o valor da variável de ambiente AZURE_USERNAME, se existir.
- shared_cache_tenant_id
- str
Inquilino preferencial para SharedTokenCacheCredential. A predefinição é o valor da variável de ambiente AZURE_TENANT_ID, se existir.
- visual_studio_code_tenant_id
- str
ID do inquilino a utilizar ao autenticar com VisualStudioCodeCredential. A predefinição é a definição "Azure: Inquilino" nas definições de utilizador do VS Code ou, quando essa definição não tem valor, o inquilino "organizações", que suporta apenas contas escolares ou profissionais do Azure Active Directory.
- process_timeout
- int
O tempo limite em segundos a utilizar para credenciais de programador que executam subprocessos (por exemplo, AzureCliCredential, AzurePowerShellCredential). A predefinição é de 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 |
Pedir um token de acesso para âmbitos. Este método é chamado automaticamente pelos clientes do SDK do Azure. |
close
Feche a sessão de transporte de cada credencial na cadeia.
close() -> None
get_token
Pedir um token de acesso para âmbitos.
Este método é chamado automaticamente pelos 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
âmbitos pretendidos para o token de acesso. Este método requer, pelo menos, um âmbito. Para obter mais informações sobre âmbitos, consulte https://learn.microsoft.com/azure/active-directory/develop/scopes-oidc.
- claims
- str
afirmações adicionais necessárias no token, como as devolvidas no desafio de afirmações de um fornecedor de recursos após uma falha de autorização.
- tenant_id
- str
inquilino opcional a incluir no pedido de token.
Devoluções
Um token de acesso com os âmbitos pretendidos.
Tipo de retorno
Exceções
falha na autenticação. A exceção tem um atributo de mensagem que lista cada tentativa de autenticação e a respetiva mensagem de erro.