DefaultAzureCredential Classe
Credenziali predefinite in grado di gestire la maggior parte degli scenari di autenticazione di Azure SDK.
L'identità usata dipende dall'ambiente. Quando è necessario un token di accesso, richiede uno usando queste identità a sua volta, arrestandolo quando ne viene fornito un token:
Entità servizio configurata dalle variabili di ambiente. Per informazioni dettagliate, vedere EnvironmentCredential.
WorkloadIdentityCredential se la configurazione delle variabili di ambiente è impostata dal webhook identità del carico di lavoro di Azure.
Identità gestita di Azure. Per informazioni dettagliate, vedere ManagedIdentityCredential.
Solo in Windows: un utente che ha eseguito l'accesso con un'applicazione Microsoft, ad esempio Visual Studio. Se più identità si trovano nella cache, il valore della variabile
AZURE_USERNAME
di ambiente viene usato per selezionare l'identità da usare. Per informazioni dettagliate, vedere SharedTokenCacheCredential.Identità attualmente connesso all'interfaccia della riga di comando di Azure.
Identità attualmente connesso a Azure PowerShell.
Identità attualmente connesso al Azure Developer CLI.
Questo comportamento predefinito è configurabile con gli argomenti delle parole chiave.
- Ereditarietà
-
azure.identity.aio._credentials.chained.ChainedTokenCredentialDefaultAzureCredential
Costruttore
DefaultAzureCredential(**kwargs: Any)
Parametri
- authority
- str
Autorità di un endpoint di Azure Active Directory, ad esempio "login.microsoftonline.com", l'autorità per Azure Public Cloud (ovvero l'impostazione predefinita). AzureAuthorityHosts definisce le autorità per altri cloud. Le identità gestite ignorano questo perché risiedono in un singolo cloud.
- exclude_workload_identity_credential
- bool
Se escludere l'identità del carico di lavoro dalle credenziali. Impostazione predefinita su False.
- exclude_developer_cli_credential
- bool
Se escludere la Azure Developer CLI dalle credenziali. Impostazione predefinita su False.
- exclude_cli_credential
- bool
Se escludere l'interfaccia della riga di comando di Azure dalle credenziali. Impostazione predefinita su False.
- exclude_environment_credential
- bool
Se escludere un'entità servizio configurata dalle variabili di ambiente dalle credenziali. Impostazione predefinita su False.
- exclude_powershell_credential
- bool
Se escludere Azure PowerShell. Impostazione predefinita su False.
- exclude_visual_studio_code_credential
- bool
Se escludere le credenziali archiviate da VS Code. Impostazione predefinita su True.
- exclude_managed_identity_credential
- bool
Se escludere l'identità gestita dalle credenziali. Impostazione predefinita su False.
- exclude_shared_token_cache_credential
- bool
Se escludere la cache dei token condivisi. Impostazione predefinita su False.
- managed_identity_client_id
- str
ID client di un'identità gestita assegnata dall'utente. Per impostazione predefinita, il valore della variabile di ambiente AZURE_CLIENT_ID, se presente. Se non specificato, verrà usata un'identità assegnata dal sistema.
- workload_identity_client_id
- str
ID client di un'identità assegnata al pod. Per impostazione predefinita, il valore della variabile di ambiente AZURE_CLIENT_ID, se presente. Se non specificato, verrà usata l'identità predefinita del pod.
- workload_identity_tenant_id
- str
Tenant preferito per WorkloadIdentityCredential. Per impostazione predefinita, il valore della variabile di ambiente AZURE_TENANT_ID, se presente.
- shared_cache_username
- str
Nome utente preferito per SharedTokenCacheCredential. Per impostazione predefinita, il valore della variabile di ambiente AZURE_USERNAME, se presente.
- shared_cache_tenant_id
- str
Tenant preferito per SharedTokenCacheCredential. Per impostazione predefinita, il valore della variabile di ambiente AZURE_TENANT_ID, se presente.
- visual_studio_code_tenant_id
- str
ID tenant da usare per l'autenticazione con VisualStudioCodeCredential. Per impostazione predefinita, l'impostazione "Azure: Tenant" nelle impostazioni utente di VS Code o, quando tale impostazione non ha alcun valore, il tenant "organizzazioni", che supporta solo gli account aziendali o dell'istituto di istruzione di Azure Active Directory.
- process_timeout
- int
Timeout in secondi da usare per le credenziali degli sviluppatori che eseguono sottoprocessi (ad esempio AzureCliCredential, AzurePowerShellCredential). Il valore predefinito è 10 secondi.
Esempio
Creare un oggetto DefaultAzureCredential.
from azure.identity.aio import DefaultAzureCredential
credential = DefaultAzureCredential()
Metodi
close |
Chiudere le sessioni di trasporto di tutte le credenziali nella catena. |
get_token |
Richiedere in modo asincrono un token di accesso per gli ambiti. Questo metodo viene chiamato automaticamente dai client Azure SDK. |
close
Chiudere le sessioni di trasporto di tutte le credenziali nella catena.
async close() -> None
get_token
Richiedere in modo asincrono un token di accesso per gli ambiti.
Questo metodo viene chiamato automaticamente dai client Azure SDK.
async get_token(*scopes: str, claims: str | None = None, tenant_id: str | None = None, **kwargs: Any) -> AccessToken
Parametri
- scopes
- str
ambiti desiderati per il token di accesso. Questo metodo richiede almeno un ambito. Per altre informazioni sugli ambiti, vedere https://learn.microsoft.com/azure/active-directory/develop/scopes-oidc.
- claims
- str
attestazioni aggiuntive necessarie nel token, ad esempio quelle restituite nella richiesta di attestazioni di un provider di risorse in seguito a un errore di autorizzazione.
- tenant_id
- str
tenant facoltativo da includere nella richiesta di token.
Restituisce
Token di accesso con gli ambiti desiderati.
Tipo restituito
Eccezioni
autenticazione non riuscita. L'eccezione include un attributo di messaggio che elenca ogni tentativo di autenticazione e il relativo messaggio di errore.