Partage via


Intégrer Azure App Configuration avec Service Connector

Cet article présente les méthodes et clients d’authentification pris en charge, ainsi qu’un exemple de code que vous pouvez utiliser pour connecter Azure App Configuration à d’autres services cloud à l’aide du connecteur de services. Il se peut que vous puissiez encore vous connecter à App Configuration à l’aide d’autres méthodes. Cette page indique également les noms et les valeurs des variables d'environnement par défaut que vous obtenez lorsque vous créez la connexion du service.

Service de calcul pris en charge

Vous pouvez utiliser le connecteur de services pour connecter les services de calcul suivants à Azure App Configuration :

  • Azure App Service
  • Azure Container Apps
  • Azure Functions
  • Azure Kubernetes Service (AKS)
  • Azure Spring Apps

Types d’authentification et de clients pris en charge

Le tableau ci-dessous montre quelles combinaisons de méthodes et de clients d’authentification sont prises en charge pour connecter votre service de calcul à Azure App Configuration à l’aide du connecteur de services. « Oui » indique que la combinaison est prise en charge, tandis que « Non » indique qu’elle n’est pas prise en charge.

Type de client Identité managée affectée par le système Identité managée affectée par l’utilisateur Secret/chaîne de connexion Principal du service
.NET Oui Oui Oui Oui
Java Oui Oui Oui Oui
Node.js Oui Oui Oui Oui
Python Oui Oui Oui Oui
Aucun Oui Oui Oui Oui

Ce tableau indique que toutes les combinaisons de types client et de méthodes d’authentification dans la table sont prises en charge. Tous les types client peuvent utiliser l’une des méthodes d’authentification pour se connecter à Azure App Configuration à l’aide du connecteur de services.

Noms des variables d’environnement par défaut ou propriétés de l’application et exemple de code

Utilisez les détails de connexion ci-dessous pour connecter des services de calcul à des magasins Azure App Configuration. Pour plus d’informations sur les conventions d’affectation de noms, consultez l’article Services internes du connecteur de services.

Identité managée affectée par le système

Nom de variable d’environnement par défaut Description Exemple de valeur
AZURE_APPCONFIGURATION_ENDPOINT Point de terminaison App Configuration https://<App-Configuration-name>.azconfig.io

Exemple de code

Reportez-vous aux étapes et au code ci-dessous pour vous connecter à Azure App Configuration à l’aide d’une identité managée affectée par le système.

  1. Installez des dépendances.

    dotnet add package Microsoft.Extensions.Configuration.AzureAppConfiguration
    dotnet add package Azure.Identity
    
  2. Authentifiez-vous avec Azure.Identity et obtenez le point de terminaison Azure App Configuration à partir des variables d’environnement ajoutées par le connecteur de services. Lorsque vous utilisez le code ci-dessous, supprimez les marques de commentaire de la partie de l’extrait de code pour le type d’authentification que vous souhaitez utiliser.

    using Azure.Identity;
    using Microsoft.Extensions.Configuration;
    using Microsoft.Extensions.Configuration.AzureAppConfiguration;
    
    string endpoint = Environment.GetEnvironmentVariable("AZURE_APPCONFIGURATION_ENDPOINT");
    
    // Uncomment the following lines corresponding to the authentication type you want to use.
    // system-assigned managed identity
    // var credential = new DefaultAzureCredential();
    
    // user-assigned managed identity
    // var credential = new DefaultAzureCredential(
    //     new DefaultAzureCredentialOptions
    //     {
    //         ManagedIdentityClientId = Environment.GetEnvironmentVariable("AZURE_APPCONFIGURATION_CLIENTID");
    //     });
    
    // service principal 
    // var tenantId = Environment.GetEnvironmentVariable("AZURE_APPCONFIGURATION_TENANTID");
    // var clientId = Environment.GetEnvironmentVariable("AZURE_APPCONFIGURATION_CLIENTID");
    // var clientSecret = Environment.GetEnvironmentVariable("AZURE_APPCONFIGURATION_CLIENTSECRET");
    // var credential = new ClientSecretCredential(tenantId, clientId, clientSecret);
    
    var client = new ConfigurationClient(new Uri(endpoint), credential);
    

Identité managée affectée par l’utilisateur

Nom de variable d’environnement par défaut Description Exemple de valeur
AZURE_APPCONFIGURATION_ENDPOINT Point de terminaison App Configuration https://App-Configuration-name>.azconfig.io
AZURE_APPCONFIGURATION_CLIENTID Votre ID client <client-ID>

Exemple de code

Reportez-vous aux étapes et au code ci-dessous pour vous connecter à Azure App Configuration à l’aide d’une identité managée affectée par l’utilisateur.

  1. Installez des dépendances.

    dotnet add package Microsoft.Extensions.Configuration.AzureAppConfiguration
    dotnet add package Azure.Identity
    
  2. Authentifiez-vous avec Azure.Identity et obtenez le point de terminaison Azure App Configuration à partir des variables d’environnement ajoutées par le connecteur de services. Lorsque vous utilisez le code ci-dessous, supprimez les marques de commentaire de la partie de l’extrait de code pour le type d’authentification que vous souhaitez utiliser.

    using Azure.Identity;
    using Microsoft.Extensions.Configuration;
    using Microsoft.Extensions.Configuration.AzureAppConfiguration;
    
    string endpoint = Environment.GetEnvironmentVariable("AZURE_APPCONFIGURATION_ENDPOINT");
    
    // Uncomment the following lines corresponding to the authentication type you want to use.
    // system-assigned managed identity
    // var credential = new DefaultAzureCredential();
    
    // user-assigned managed identity
    // var credential = new DefaultAzureCredential(
    //     new DefaultAzureCredentialOptions
    //     {
    //         ManagedIdentityClientId = Environment.GetEnvironmentVariable("AZURE_APPCONFIGURATION_CLIENTID");
    //     });
    
    // service principal 
    // var tenantId = Environment.GetEnvironmentVariable("AZURE_APPCONFIGURATION_TENANTID");
    // var clientId = Environment.GetEnvironmentVariable("AZURE_APPCONFIGURATION_CLIENTID");
    // var clientSecret = Environment.GetEnvironmentVariable("AZURE_APPCONFIGURATION_CLIENTSECRET");
    // var credential = new ClientSecretCredential(tenantId, clientId, clientSecret);
    
    var client = new ConfigurationClient(new Uri(endpoint), credential);
    

Connection string

Avertissement

Microsoft vous recommande d’utiliser le flux d’authentification le plus sécurisé disponible. Le flux d'authentification décrit dans cette procédure demande un degré de confiance très élevé dans l'application et comporte des risques qui ne sont pas présents dans d'autres flux. Vous ne devez utiliser ce flux que si d’autres flux plus sécurisés, tels que les identités managées, ne sont pas viables.

Nom de variable d’environnement par défaut Description Exemple de valeur
AZURE_APPCONFIGURATION_CONNECTIONSTRING Votre chaîne de connexion App Configuration Endpoint=https://<App-Configuration-name>.azconfig.io;Id=<ID>;Secret=<secret>

Exemple de code

Reportez-vous aux étapes et au code ci-dessous pour vous connecter à Azure App Configuration à l’aide d’une chaîne de connexion.

  1. Installez des dépendances.

    dotnet add package Microsoft.Extensions.Configuration.AzureAppConfiguration
    
  2. Obtenez la chaîne de connexion App Configuration à partir des variables d’environnement ajoutées par le connecteur de services.

    using Microsoft.Extensions.Configuration;
    using Microsoft.Extensions.Configuration.AzureAppConfiguration;
    
    var connectionString = Environment.GetEnvironmentVariable("AZURE_APPCONFIGURATION_CONNECTIONSTRING");
    var builder = new ConfigurationBuilder();
    builder.AddAzureAppConfiguration(connectionString);
    
    var config = builder.Build();
    

Principal du service

Nom de variable d’environnement par défaut Description Exemple de valeur
AZURE_APPCONFIGURATION_ENDPOINT Point de terminaison App Configuration https://<AppConfigurationName>.azconfig.io
AZURE_APPCONFIGURATION_CLIENTID Votre ID client <client-ID>
AZURE_APPCONFIGURATION_CLIENTSECRET Votre clé secrète client <client-secret>
AZURE_APPCONFIGURATION_TENANTID Votre ID d’abonné <tenant-ID>

Exemple de code

Reportez-vous aux étapes et au code ci-dessous pour vous connecter à Azure App Configuration à l’aide d’un principal de service.

  1. Installez des dépendances.

    dotnet add package Microsoft.Extensions.Configuration.AzureAppConfiguration
    dotnet add package Azure.Identity
    
  2. Authentifiez-vous avec Azure.Identity et obtenez le point de terminaison Azure App Configuration à partir des variables d’environnement ajoutées par le connecteur de services. Lorsque vous utilisez le code ci-dessous, supprimez les marques de commentaire de la partie de l’extrait de code pour le type d’authentification que vous souhaitez utiliser.

    using Azure.Identity;
    using Microsoft.Extensions.Configuration;
    using Microsoft.Extensions.Configuration.AzureAppConfiguration;
    
    string endpoint = Environment.GetEnvironmentVariable("AZURE_APPCONFIGURATION_ENDPOINT");
    
    // Uncomment the following lines corresponding to the authentication type you want to use.
    // system-assigned managed identity
    // var credential = new DefaultAzureCredential();
    
    // user-assigned managed identity
    // var credential = new DefaultAzureCredential(
    //     new DefaultAzureCredentialOptions
    //     {
    //         ManagedIdentityClientId = Environment.GetEnvironmentVariable("AZURE_APPCONFIGURATION_CLIENTID");
    //     });
    
    // service principal 
    // var tenantId = Environment.GetEnvironmentVariable("AZURE_APPCONFIGURATION_TENANTID");
    // var clientId = Environment.GetEnvironmentVariable("AZURE_APPCONFIGURATION_CLIENTID");
    // var clientSecret = Environment.GetEnvironmentVariable("AZURE_APPCONFIGURATION_CLIENTSECRET");
    // var credential = new ClientSecretCredential(tenantId, clientId, clientSecret);
    
    var client = new ConfigurationClient(new Uri(endpoint), credential);
    

Étapes suivantes

Suivez le tutoriel ci-dessous pour en savoir plus sur Service Connector.