DefaultAzureCredential Classe
- java.
lang. Object - com.
azure. identity. ChainedTokenCredential - com.
azure. identity. DefaultAzureCredential
- com.
- com.
public final class DefaultAzureCredential
extends ChainedTokenCredential
DefaultAzureCredential convient à la plupart des scénarios où l’application est destinée à être exécutée dans Azure. DefaultAzureCredential combine les informations d’identification couramment utilisées pour l’authentification lors du déploiement avec les informations d’identification utilisées pour l’authentification dans un environnement de développement. DefaultAzureCredential tente de s’authentifier via les mécanismes suivants dans l’ordre.
! [Image 1] []
- EnvironmentCredential - DefaultAzureCredential lit les informations de compte spécifiées via des variables d’environnement et les utilise pour s’authentifier.
- WorkloadIdentityCredential - Si l’application est déployée sur Kubernetes avec des variables d’environnement définies par le webhook d’identité de charge de travail, DefaultAzureCredential authentifie l’identité configurée.
- ManagedIdentityCredential - Si l’application se déploie sur un hôte Azure avec l’identité managée activée, DefaultAzureCredential s’authentifie auprès de ce compte.
- IntelliJCredential - Si vous vous êtes authentifié via [Azure Toolkit for IntelliJ][], DefaultAzureCredential s’authentifie auprès de ce compte.
- AzureCliCredential - Si vous avez authentifié un compte via la commande Azure CLI
az login
, DefaultAzureCredential s’authentifie auprès de ce compte. - AzurePowerShellCredential - Si vous avez authentifié un compte via la commande [Azure Power Shell][],
Az Login
defaultAzureCredential s’authentifie auprès de ce compte. - Échoue si aucune des informations d’identification ci-dessus n’a pu être créée.
Pour plus d’informations, reportez-vous à la [documentation sur l’authentification des informations d’identification Azure par défaut][].
Configurer DefaultAzureCredential
DefaultAzureCredential prend en charge un ensemble de configurations par le biais de setters sur les variables d’environnement DefaultAzureCredentialBuilder ou .
- La définition des variables
AZURE_CLIENT_ID
d’environnement ,AZURE_CLIENT_SECRET/AZURE_CLIENT_CERTIFICATE_PATH
etAZURE_TENANT_ID
configure DefaultAzureCredential pour s’authentifier en tant que principal de service spécifié par les valeurs. - Le fait managedIdentityClientId(String clientId) de définir sur le générateur ou la variable d’environnement AZURE_CLIENT_ID configure defaultAzureCredential pour s’authentifier en tant qu’identité managée définie par l’utilisateur, tout en les laissant vide, elle est configurée pour s’authentifier en tant qu’identité managée affectée par le système.
- La définition tenantId(String tenantId) sur le générateur ou la variable
AZURE_TENANT_ID
d’environnement configure DefaultAzureCredential pour s’authentifier auprès d’un locataire spécifique pour Visual Studio Code et IntelliJ IDEA.
Exemple : Construction DefaultAzureCredential
L’exemple de code suivant illustre la création d’un DefaultAzureCredential, à l’aide de pour le DefaultAzureCredentialBuilder configurer. Une fois ces informations d’identification créées, elles peuvent être passées au générateur de la plupart des générateurs de clients du SDK Azure pour Java en tant que paramètre « credential ».
TokenCredential defaultAzureCredential = new DefaultAzureCredentialBuilder()
.build();
Exemple : Construire DefaultAzureCredential avec une identité managée affectée par l’utilisateur
User-Assigned Identité managée (UAMI) dans Azure est une fonctionnalité qui vous permet de créer une identité dans [Azure Active Directory (Azure AD) ][Azure Active Directory Azure AD] associée à une ou plusieurs ressources Azure. Cette identité peut ensuite être utilisée pour authentifier et autoriser l’accès à différents services et ressources Azure. L’exemple de code suivant illustre la création d’un DefaultAzureCredential pour cibler une identité managée affectée par l’utilisateur, en utilisant pour la DefaultAzureCredentialBuilder configurer. Une fois ces informations d’identification créées, elles peuvent être passées au générateur de la plupart des générateurs de clients du SDK Azure pour Java en tant que paramètre « credential ».
TokenCredential dacWithUserAssignedManagedIdentity = new DefaultAzureCredentialBuilder()
.managedIdentityClientId("<Managed-Identity-Client-Id")
.build();
[Image 1] : [Kit de ressources Azure pour IntelliJ] : https://video2.skills-academy.com/azure/developer/java/toolkit-for-intellij/ [Azure Power Shell] : https://video2.skills-academy.com/powershell/azure/?view=azps-9.4.0 [Documents d’authentification des informations d’identification Azure par défaut] : https://aka.ms/azsdk/java/identity/defaultazurecredential/docs [Azure Active Directory Azure AD] : https://video2.skills-academy.com/azure/active-directory/fundamentals/