Freigeben über


DefaultAzureCredential Klasse

Standardanmeldeinformationen, die die meisten Azure SDK-Authentifizierungsszenarien verarbeiten können.

Welche Identität verwendet wird, hängt von der Umgebung ab. Wenn ein Zugriffstoken benötigt wird, fordert es eine an, die wiederum diese Identitäten verwendet, und wird beendet, wenn ein Token bereitgestellt wird:

  1. Ein Dienstprinzipal, der von Umgebungsvariablen konfiguriert wird. Weitere Informationen finden Sie unter EnvironmentCredential.

  2. WorkloadIdentityCredential, wenn die Konfiguration der Umgebungsvariablen vom Webhook der Azure-Workloadidentität festgelegt wird.

  3. Eine verwaltete Azure-Identität. Weitere Informationen finden Sie unter ManagedIdentityCredential.

  4. Nur unter Windows: Ein Benutzer, der sich mit einer Microsoft-Anwendung angemeldet hat, z. B. Visual Studio. Wenn sich mehrere Identitäten im Cache befinden, wird der Wert der Umgebungsvariablen AZURE_USERNAME verwendet, um auszuwählen, welche Identität verwendet werden soll. Weitere Informationen finden Sie unter SharedTokenCacheCredential.

  5. Die Identität, die derzeit bei der Azure CLI angemeldet ist.

  6. Die Identität, die derzeit bei Azure PowerShell angemeldet ist.

  7. Die Identität, die derzeit beim Azure Developer CLI angemeldet ist.

Dieses Standardverhalten kann mit Schlüsselwort (keyword) Argumenten konfiguriert werden.

Vererbung
azure.identity._credentials.chained.ChainedTokenCredential
DefaultAzureCredential

Konstruktor

DefaultAzureCredential(**kwargs: Any)

Parameter

authority
str

Autorität eines Azure Active Directory-Endpunkts, z. B. "login.microsoftonline.com", der Autorität für die öffentliche Azure-Cloud (Dies ist die Standardeinstellung). AzureAuthorityHosts definiert Autoritäten für andere Clouds. Verwaltete Identitäten ignorieren dies, da sie sich in einer einzelnen Cloud befinden.

exclude_workload_identity_credential
bool

Gibt an, ob die Workloadidentität aus den Anmeldeinformationen ausgeschlossen werden soll. Der Standardwert ist False.

exclude_developer_cli_credential
bool

Gibt an, ob die Azure Developer CLI von den Anmeldeinformationen ausgeschlossen werden soll. Der Standardwert ist False.

exclude_cli_credential
bool

Gibt an, ob die Azure CLI aus den Anmeldeinformationen ausgeschlossen werden soll. Der Standardwert ist False.

exclude_environment_credential
bool

Gibt an, ob ein durch Umgebungsvariablen konfigurierter Dienstprinzipal aus den Anmeldeinformationen ausgeschlossen werden soll. Der Standardwert ist False.

exclude_managed_identity_credential
bool

Gibt an, ob die verwaltete Identität von den Anmeldeinformationen ausgeschlossen werden soll. Der Standardwert ist False.

exclude_powershell_credential
bool

Gibt an, ob Azure PowerShell ausgeschlossen werden soll. Der Standardwert ist False.

exclude_visual_studio_code_credential
bool

Gibt an, ob gespeicherte Anmeldeinformationen aus VS Code ausgeschlossen werden sollen. Der Standardwert ist True.

exclude_shared_token_cache_credential
bool

Gibt an, ob der freigegebene Tokencache ausgeschlossen werden soll. Der Standardwert ist False.

exclude_interactive_browser_credential
bool

Gibt an, ob die interaktive Browserauthentifizierung ausgeschlossen werden soll (siehe InteractiveBrowserCredential). Der Standardwert ist True.

interactive_browser_tenant_id
str

Mandanten-ID, die beim Authentifizieren eines Benutzers über InteractiveBrowserCredentialverwendet werden soll. Standardmäßig wird der Wert der Umgebungsvariablen AZURE_TENANT_ID verwendet, sofern vorhanden. Falls nicht angegeben, authentifizieren sich Die Benutzer bei ihren Basismandanten.

managed_identity_client_id
str

Die Client-ID einer benutzerseitig zugewiesenen verwalteten Identität. Standardmäßig wird der Wert der Umgebungsvariablen AZURE_CLIENT_ID verwendet, sofern vorhanden. Wenn nicht angegeben, wird eine systemseitig zugewiesene Identität verwendet.

workload_identity_client_id
str

Die Client-ID einer Identität, die dem Pod zugewiesen ist. Standardmäßig wird der Wert der Umgebungsvariablen AZURE_CLIENT_ID verwendet, sofern vorhanden. Wenn nicht angegeben, wird die Standardidentität des Pods verwendet.

workload_identity_tenant_id
str

Bevorzugter Mandant für WorkloadIdentityCredential. Standardmäßig wird der Wert der Umgebungsvariablen AZURE_TENANT_ID verwendet, sofern vorhanden.

interactive_browser_client_id
str

Die Client-ID, die in interaktiven Browseranmeldeinformationen verwendet werden soll. Wenn nicht angegeben, authentifizieren sich Die Benutzer bei einer Azure-Entwicklungsanwendung.

shared_cache_username
str

Bevorzugter Benutzername für SharedTokenCacheCredential. Standardmäßig wird der Wert der Umgebungsvariablen AZURE_USERNAME verwendet, sofern vorhanden.

shared_cache_tenant_id
str

Bevorzugter Mandant für SharedTokenCacheCredential. Standardmäßig wird der Wert der Umgebungsvariablen AZURE_TENANT_ID verwendet, sofern vorhanden.

visual_studio_code_tenant_id
str

Mandanten-ID, die bei der Authentifizierung mit VisualStudioCodeCredentialverwendet werden soll. Standardmäßig wird die Einstellung "Azure: Mandant" in den Benutzereinstellungen von VS Code oder, wenn diese Einstellung keinen Wert hat, der Mandant "organizations" verwendet, der nur Azure Active Directory-Geschäfts- oder Schulkonten unterstützt.

process_timeout
int

Das Timeout in Sekunden, das für Entwickleranmeldeinformationen verwendet werden soll, die Unterprozesse ausführen (z. B. AzureCliCredential, AzurePowerShellCredential). Der Standardwert ist 10 Sekunden.

Beispiele

Erstellen Sie ein DefaultAzureCredential-Objekt.


   from azure.identity import DefaultAzureCredential

   credential = DefaultAzureCredential()

Methoden

close

Schließen Sie die Transportsitzung aller Anmeldeinformationen in der Kette.

get_token

Fordern Sie ein Zugriffstoken für Bereiche an.

Diese Methode wird von Azure SDK-Clients automatisch aufgerufen.

close

Schließen Sie die Transportsitzung aller Anmeldeinformationen in der Kette.

close() -> None

get_token

Fordern Sie ein Zugriffstoken für Bereiche an.

Diese Methode wird von Azure SDK-Clients automatisch aufgerufen.

get_token(*scopes: str, claims: str | None = None, tenant_id: str | None = None, **kwargs: Any) -> AccessToken

Parameter

scopes
str
Erforderlich

gewünschte Bereiche für das Zugriffstoken. Für diese Methode ist mindestens ein Bereich erforderlich. Weitere Informationen zu Bereichen finden Sie unter https://learn.microsoft.com/azure/active-directory/develop/scopes-oidc.

claims
str

Zusätzliche Ansprüche, die im Token erforderlich sind, z. B. die in der Anspruchsanforderung eines Ressourcenanbieters nach einem Autorisierungsfehler zurückgegeben werden.

tenant_id
str

optionaler Mandant, der in die Tokenanforderung aufgenommen werden soll.

Gibt zurück

Ein Zugriffstoken mit den gewünschten Bereichen.

Rückgabetyp

Ausnahmen

Fehler bei der Authentifizierung. Die Ausnahme weist ein Nachrichtenattribut auf, das jeden Authentifizierungsversuch und die zugehörige Fehlermeldung auflistet.