DefaultAzureCredential Klasse
- java.
lang. Object - com.
azure. identity. ChainedTokenCredential - com.
azure. identity. DefaultAzureCredential
- com.
- com.
public final class DefaultAzureCredential
extends ChainedTokenCredential
DefaultAzureCredential eignet sich für die meisten Szenarien, in denen die Anwendung letztendlich in Azure ausgeführt werden soll. DefaultAzureCredential kombiniert Anmeldeinformationen, die häufig für die Authentifizierung bei der Bereitstellung verwendet werden, mit Anmeldeinformationen, die für die Authentifizierung in einer Entwicklungsumgebung verwendet werden. DefaultAzureCredential versucht, die Authentifizierung über die folgenden Mechanismen in der Reihenfolge durchzuführen.
! [Bild 1] []
- EnvironmentCredential – DefaultAzureCredential liest Kontoinformationen, die über Umgebungsvariablen angegeben wurden, und verwendet sie zur Authentifizierung.
- WorkloadIdentityCredential – Wenn die App in Kubernetes mit Umgebungsvariablen bereitgestellt wird, die vom Workloadidentitätswebhook festgelegt werden, authentifiziert DefaultAzureCredential die konfigurierte Identität.
- ManagedIdentityCredential – Wenn die Anwendung auf einem Azure-Host mit aktivierter verwalteter Identität bereitgestellt wird, authentifiziert sich DefaultAzureCredential mit diesem Konto.
- IntelliJCredential – Wenn Sie sich über [Azure Toolkit for IntelliJ][authentifiziert haben, authentifiziert sich defaultAzureCredential bei diesem Konto.
- AzureCliCredential – Wenn Sie ein Konto über den Azure CLI-Befehl
az login
authentifiziert haben, authentifiziert sich defaultAzureCredential bei diesem Konto. - AzurePowerShellCredential – Wenn Sie ein Konto über den Befehl [Azure Power Shell][]
Az Login
authentifiziert haben, wird defaultAzureCredential mit diesem Konto authentifiziert. - Tritt ein Fehler auf, wenn keine der oben genannten Anmeldeinformationen erstellt werden konnte.
Weitere Informationen finden Sie in der Dokumentation [Standarddokumentation zur Authentifizierung von Azure-Anmeldeinformationen][].
Konfigurieren von DefaultAzureCredential
DefaultAzureCredential unterstützt eine Reihe von Konfigurationen über Setter für die Umgebungsvariablen DefaultAzureCredentialBuilder oder .
- Durch Festlegen der Umgebungsvariablen
AZURE_CLIENT_ID
,AZURE_CLIENT_SECRET/AZURE_CLIENT_CERTIFICATE_PATH
undAZURE_TENANT_ID
wird defaultAzureCredential so konfiguriert, dass er sich als dienstprinzipal authentifiziert, der durch die Werte angegeben wird. - Durch festlegen managedIdentityClientId(String clientId) des Generators oder der Umgebungsvariablen AZURE_CLIENT_ID wird defaultAzureCredential für die Authentifizierung als benutzerdefinierte verwaltete Identität konfiguriert, während sie leer gelassen wird, um sie als systemseitig zugewiesene verwaltete Identität zu authentifizieren.
- Die Einstellung tenantId(String tenantId) für den Generator oder die Umgebungsvariable
AZURE_TENANT_ID
konfiguriert defaultAzureCredential für die Authentifizierung bei einem bestimmten Mandanten für Visual Studio Code und IntelliJ IDEA.
Beispiel: Erstellen von DefaultAzureCredential
Im folgenden Codebeispiel wird die Erstellung eines DefaultAzureCredential-Werts veranschaulicht, der zum Konfigurieren verwendet DefaultAzureCredentialBuilder wird. Nachdem diese Anmeldeinformationen erstellt wurden, können sie als Parameter "credential" an den Generator vieler Client-Generatoren des Azure SDK für Java übergeben werden.
TokenCredential defaultAzureCredential = new DefaultAzureCredentialBuilder()
.build();
Beispiel: Erstellen von DefaultAzureCredential mit benutzerseitig zugewiesener verwalteter Identität
User-Assigned Verwaltete Identität (UAMI) in Azure ist ein Feature, mit dem Sie in [Azure Active Directory (Azure AD) ][Azure Active Directory Azure AD] eine Identität erstellen können, die einer oder mehreren Azure-Ressourcen zugeordnet ist. Diese Identität kann dann verwendet werden, um den Zugriff auf verschiedene Azure-Dienste und -Ressourcen zu authentifizieren und zu autorisieren. Im folgenden Codebeispiel wird die Erstellung eines DefaultAzureCredential-Werts für eine vom Benutzer zugewiesene verwaltete Identität veranschaulicht, wobei die zum Konfigurieren verwendet DefaultAzureCredentialBuilder wird. Nachdem diese Anmeldeinformationen erstellt wurden, können sie als Parameter "credential" an den Generator vieler Client-Generatoren des Azure SDK für Java übergeben werden.
TokenCredential dacWithUserAssignedManagedIdentity = new DefaultAzureCredentialBuilder()
.managedIdentityClientId("<Managed-Identity-Client-Id")
.build();
[Bild 1]: [Azure-Toolkit für IntelliJ]: https://learn.microsoft.com/azure/developer/java/toolkit-for-intellij/ [Azure Power Shell]: https://learn.microsoft.com/powershell/azure/?view=azps-9.4.0 [Dokumentation zur Standarddokumentation zur Authentifizierung von Azure-Anmeldeinformationen]: https://aka.ms/azsdk/java/identity/defaultazurecredential/docs [Azure Active Directory Azure AD]: https://learn.microsoft.com/azure/active-directory/fundamentals/