Gestionnaire de ressources Spring Cloud Azure

Azure Resource Manager (ARM) est le service de déploiement et de gestion pour Azure. Il fournit une couche de gestion qui vous permet de créer, mettre à jour et supprimer des ressources dans votre compte Azure. Spring Cloud Azure Resource Manager peut aider à provisionner des ressources ou à récupérer des métadonnées de ressources.

Configuration des dépendances

<dependency>
  <groupId>com.azure.spring</groupId>
  <artifactId>spring-cloud-azure-resourcemanager</artifactId>
</dependency>

Paramétrage

Remarque

Si vous choisissez d’utiliser un principal de sécurité pour authentifier et autoriser avec Microsoft Entra ID pour accéder à une ressource Azure, consultez Autoriser l’accès avec l’ID Microsoft Entra pour vous assurer que le principal de sécurité a reçu l’autorisation suffisante pour accéder à la ressource Azure.

Propriétés configurables de spring-cloud-azure-resourcemanager:

Propriété Descriptif
spring.cloud.azure.resource-manager.enabled Indique si Resource Manager est activé. La valeur par défaut est true.
spring.cloud.azure.credential.client-id ID client à utiliser lors de l’authentification du principal de service avec Azure.
spring.cloud.azure.credential.client-secret Clé secrète client à utiliser lors de l’authentification du principal de service auprès d’Azure.
spring.cloud.azure.credential.client-certificate-path Chemin d’un fichier de certificat PEM à utiliser lors de l’authentification du principal de service avec Azure.
spring.cloud.azure.credential.client-certificate-password Mot de passe du fichier de certificat.
spring.cloud.azure.credential.username Nom d’utilisateur à utiliser lors de l’exécution de l’authentification par nom d’utilisateur/mot de passe avec Azure.
spring.cloud.azure.credential.password Mot de passe à utiliser lors de l’exécution de l’authentification par nom d’utilisateur/mot de passe.
spring.cloud.azure.credential.managed-identity-enabled Indique s’il faut activer l’identité managée.
spring.cloud.azure.profile.cloud-type Nom du cloud Azure auquel se connecter.
spring.cloud.azure.profile.environment.active-directory-endpoint Point de terminaison Microsoft Entra auquel se connecter pour l’authentification.
spring.cloud.azure.profile.subscription-id ID d’abonnement à utiliser lors de la connexion aux ressources Azure.
spring.cloud.azure.profile.tenant-id ID de locataire pour les ressources Azure. Les valeurs autorisées pour tenant-id sont : common, organizations, consumersou l’ID de locataire.
spring.cloud.azure.azure-service.namespace Le namespace du service Azure servant à approvisionner des ressources.
spring.cloud.azure.azure-service.resource.resource-group Groupe de ressources contenant une ressource de service Azure.

Utilisation de base

Spring Cloud Azure Resource Manager peut collaborer avec des démarrages Spring Cloud Azure spécifiques pour récupérer des informations de connexion, telles que des chaînes de connexion, pour se connecter aux services Azure. Il peut également collaborer avec des bibliothèques spring-cloud-azure-starter et tierces pour récupérer des métadonnées telles que le nom d’utilisateur/mot de passe et pour terminer l’authentification. Pour plus d’informations, consultez la prise en charge de Kafka dans Spring Cloud Azure et la prise en charge de Redis dans Spring Cloud Azure.

Par exemple, pour récupérer la chaîne de connexion d’un service Azure, les développeurs peuvent utiliser un principal de service comme informations d’identification pour authentifier et récupérer la chaîne de connexion. La configuration est répertoriée ci-dessous. Le principal de service fourni doit être affecté au moins au rôle de Contributor de l’espace de noms associé. Consultez Autoriser l’accès avec l’ID Microsoft Entra pour vous assurer que le principal a reçu l’autorisation suffisante pour accéder à la ressource Azure.

spring:
  cloud:
    azure:
      credential:
        client-id: ${AZURE_CLIENT_ID}
        client-secret: ${AZURE_CLIENT_SECRET}
      profile:
        tenant-id: <tenant>
        subscription-id: ${AZURE_SUBSCRIPTION_ID}
      <azure-service>:
        namespace: ${SERVICEBUS_NAMESPACE}
        resource:
          resource-group: ${RESOURCE_GROUP}

Remarque

Les valeurs autorisées pour tenant-id sont : common, organizations, consumersou l’ID de locataire. Pour plus d’informations sur ces valeurs, consultez la section Utilisation du mauvais point de terminaison (comptes personnels et d’entreprise) de Erreur AADSTS50020 - Le compte utilisateur du fournisseur d’identité n’existe pas dans le locataire. Pour plus d’informations sur la conversion de votre application monolocataire, consultez Convertir une application monolocataire en multilocataire sur Microsoft Entra ID.

Échantillons

Pour plus d’informations, consultez le azure-spring-boot-samples référentiel sur GitHub.