Freigeben über


aio Paket

Anmeldeinformationen für asynchrone Azure SDK-Clients.

Klassen

AuthorizationCodeCredential

Authentifiziert sich, indem ein Zuvor von Azure Active Directory abgerufener Autorisierungscode eingelöst wird.

Weitere Informationen zum Authentifizierungsablauf finden Sie in der Azure Active Directory-Dokumentation .

AzureCliCredential

Authentifiziert sich, indem ein Token über die Azure CLI angefordert wird.

Dazu müssen Sie sich zuvor über "az login" bei Azure anmelden und die derzeit angemeldete Identität der CLI verwenden.

AzureDeveloperCliCredential

Authentifiziert sich, indem ein Token vom Azure Developer CLI angefordert wird.

Azure Developer CLI ist ein Befehlszeilenschnittstellentool, mit dem Entwickler Ressourcen in Azure erstellen, verwalten und bereitstellen können. Es basiert auf der Azure CLI und bietet zusätzliche Funktionen, die für Azure-Entwickler spezifisch sind. Es ermöglicht Benutzern, sich als Benutzer und/oder dienstprinzipal bei Azure Active Directory (Azure AD) zu authentifizieren. AzureDeveloperCliCredential authentifiziert sich in einer Entwicklungsumgebung und ruft ein Token im Namen des angemeldeten Benutzers oder Dienstprinzipals in Azure Developer CLI ab. Er fungiert als Azure Developer CLI angemeldeten Benutzer oder Dienstprinzipals und führt einen Azure CLI-Befehl darunter aus, um die Anwendung bei Azure Active Directory zu authentifizieren.

Um diese Anmeldeinformationen verwenden zu können, muss sich der Entwickler lokal in Azure Developer CLI mit einem der folgenden Befehle authentifizieren:

  • Führen Sie "azd auth login" in Azure Developer CLI aus, um sich interaktiv als Benutzer zu authentifizieren.

  • Führen Sie "azd auth login –client-id 'client_id' –client-secret 'client_secret' –tenant-id 'tenant_id'" aus, um sich als Dienstprinzipal zu authentifizieren.

Abhängig von der Gültigkeit des Aktualisierungstokens in Ihrer Organisation müssen Sie diesen Vorgang möglicherweise nach einem bestimmten Zeitraum wiederholen. Im Allgemeinen beträgt die Gültigkeitsdauer des Aktualisierungstokens einige Wochen bis hin zu einigen Monaten. AzureDeveloperCliCredential fordert Sie auf, sich erneut anzumelden.

AzurePowerShellCredential

Authentifiziert sich, indem ein Token von Azure PowerShell angefordert wird.

Dazu müssen Sie sich zuvor über "Connect-AzAccount" bei Azure anmelden und die aktuell angemeldete Identität verwenden.

CertificateCredential

Authentifiziert sich als Dienstprinzipal mithilfe eines Zertifikats.

Das Zertifikat muss über einen privaten RSA-Schlüssel verfügen, da diese Anmeldeinformationen Assertionen mithilfe von RS256 signieren. Weitere Informationen zum Konfigurieren der Zertifikatauthentifizierung finden Sie in der Azure Active Directory-Dokumentation .

ChainedTokenCredential

Eine Sequenz von Anmeldeinformationen, die selbst Anmeldeinformationen sind.

Die get_token -Methode ruft get_token alle Anmeldeinformationen in der Sequenz in der Reihenfolge auf und gibt das erste gültige Token zurück.

ClientAssertionCredential

Authentifiziert einen Dienstprinzipal mit einer JWT-Assertion.

Diese Anmeldeinformationen gelten für erweiterte Szenarien. CertificateCredential verfügt über eine komfortablere API für das gängigste Assertionsszenario, die Authentifizierung eines Dienstprinzipals mit einem Zertifikat.

ClientSecretCredential

Authentifiziert sich als Dienstprinzipal mithilfe eines geheimen Clientschlüssels.

DefaultAzureCredential

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 durch Umgebungsvariablen konfiguriert ist. Weitere Informationen finden Sie unter EnvironmentCredential.

  2. WorkloadIdentityCredential, wenn die Umgebungsvariablenkonfiguration durch den Azure-Workloadidentitäts-Webhook 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 wie Visual Studio angemeldet hat. Wenn sich mehrere Identitäten im Cache befinden, wird der Wert der Umgebungsvariable AZURE_USERNAME verwendet, um die zu verwendende Identität auszuwählen. 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.

EnvironmentCredential

Anmeldeinformationen, die durch Umgebungsvariablen konfiguriert sind.

Diese Anmeldeinformationen können sich als Dienstprinzipal mithilfe eines geheimen Clientschlüssels oder zertifikats oder als Benutzer mit Benutzername und Kennwort authentifizieren. Die Konfiguration wird in dieser Reihenfolge mithilfe der folgenden Umgebungsvariablen versucht:

Dienstprinzipal mit Geheimnis:

  • AZURE_TENANT_ID: ID des Mandanten des Dienstprinzipals. Wird auch als "Verzeichnis"-ID bezeichnet.

  • AZURE_CLIENT_ID: Die Client-ID des Dienstprinzipals

  • AZURE_CLIENT_SECRET: eines der Clientgeheimnisse des Dienstprinzipals

  • AZURE_AUTHORITY_HOST: Autorität eines Azure Active Directory-Endpunkts, z. B. "login.microsoftonline.com", der Autorität für Azure Public Cloud. Dies ist die Standardeinstellung, wenn kein Wert angegeben wird.

Dienstprinzipal mit Zertifikat:

  • AZURE_TENANT_ID: ID des Mandanten des Dienstprinzipals. Wird auch als "Verzeichnis"-ID bezeichnet.

  • AZURE_CLIENT_ID: Die Client-ID des Dienstprinzipals

  • AZURE_CLIENT_CERTIFICATE_PATH: Pfad zu einer PEM- oder PKCS12-Zertifikatdatei einschließlich des privaten Schlüssels.

  • AZURE_CLIENT_CERTIFICATE_PASSWORD: (optional) Kennwort der Zertifikatdatei, falls vorhanden.

  • AZURE_AUTHORITY_HOST: Autorität eines Azure Active Directory-Endpunkts, z. B. "login.microsoftonline.com", der Autorität für Azure Public Cloud. Dies ist die Standardeinstellung, wenn kein Wert angegeben wird.

ManagedIdentityCredential

Authentifiziert sich mit einer verwalteten Azure-Identität in jeder Hostingumgebung, die verwaltete Identitäten unterstützt.

Diese Anmeldeinformationen verwenden standardmäßig eine systemseitig zugewiesene Identität. Verwenden Sie zum Konfigurieren einer benutzerseitig zugewiesenen Identität eines der Schlüsselwort (keyword) Argumente. Weitere Informationen zum Konfigurieren der verwalteten Identität für Anwendungen finden Sie in der Azure Active Directory-Dokumentation .

OnBehalfOfCredential

Authentifiziert einen Dienstprinzipal über den Im-Auftrag-of-Flow.

Dieser Flow wird in der Regel von Diensten der mittleren Ebene verwendet, die Anforderungen für andere Dienste mit einer delegierten Benutzeridentität autorisieren. Da es sich hierbei nicht um einen interaktiven Authentifizierungsfluss handelt, muss eine Anwendung, die sie verwendet, über administratorrechte Zustimmung für alle delegierten Berechtigungen verfügen, bevor sie Token für sie anfordert. Eine ausführlichere Beschreibung des Flusses im Auftrag von finden Sie in der Azure Active Directory-Dokumentation .

SharedTokenCacheCredential

Authentifizierung mit Token in dem von Microsoft-Anwendungen gemeinsam genutzten lokalen Cache.

VisualStudioCodeCredential

Authentifiziert sich als Azure-Benutzer, der sich bei Visual Studio Code über die Erweiterung "Azure-Konto" angemeldet hat.

Es ist ein bekanntes Problem , dass diese Anmeldeinformationen nicht mit Azure-Kontoerweiterungsversionen funktionieren, die neuer als 0.9.11 sind. Es wird eine langfristige Lösung für dieses Problem ausgeführt. Erwägen Sie in der Zwischenzeit, sich mit AzureCliCredentialzu authentifizieren.

WorkloadIdentityCredential

Authentifiziert sich mithilfe einer Azure Active Directory-Workloadidentität.

Die Workloadidentitätsauthentifizierung ist ein Feature in Azure, mit dem Anwendungen, die auf virtuellen Computern (VMs) ausgeführt werden, auf andere Azure-Ressourcen zugreifen können, ohne dass ein Dienstprinzipal oder eine verwaltete Identität erforderlich ist. Bei der Workloadidentitätsauthentifizierung authentifizieren sich Anwendungen mit ihrer eigenen Identität, anstatt einen gemeinsamen Dienstprinzipal oder eine verwaltete Identität zu verwenden. Unter der Haube verwendet die Workloadidentitätsauthentifizierung das Konzept der Dienstkontoanmeldeinformationen (Service Account Credentials, SACs), die automatisch von Azure erstellt und sicher auf dem virtuellen Computer gespeichert werden. Durch die Authentifizierung der Workloadidentität können Sie vermeiden, dass Dienstprinzipale oder verwaltete Identitäten für jede Anwendung auf den einzelnen virtuellen Computern verwaltet und rotiert werden müssen. Da SACs automatisch erstellt und von Azure verwaltet werden, müssen Sie sich darüber hinaus keine Gedanken über das Speichern und Schützen vertraulicher Anmeldeinformationen selbst machen.

WorkloadIdentityCredential unterstützt die Authentifizierung der Azure-Workloadidentität in Azure Kubernetes und ruft ein Token mit den Anmeldeinformationen des Dienstkontos ab, die in der Azure Kubernetes-Umgebung verfügbar sind. Weitere Informationen finden Sie in dieser Übersicht über die Workloadidentität .