Intégrer Azure App Configuration avec Service Connector
Article
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.
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);
Ajoutez les dépendances suivantes dans votre fichier pom.xml :
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.
// Uncomment the following lines corresponding to the authentication type you want to use.
// for system-managed identity
// DefaultAzureCredential defaultCredential = new DefaultAzureCredentialBuilder().build();
// for user-assigned managed identity
// DefaultAzureCredential defaultCredential = new DefaultAzureCredentialBuilder()
// .managedIdentityClientId(System.getenv("AZURE_APPCONFIGURATION_CLIENTID"))
// .build();
// for service principal
// ClientSecretCredential defaultCredential = new ClientSecretCredentialBuilder()
// .clientId(System.getenv("AZURE_APPCONFIGURATION_CLIENTID"))
// .clientSecret(System.getenv("AZURE_APPCONFIGURATION_CLIENTSECRET"))
// .tenantId(System.getenv("AZURE_APPCONFIGURATION_TENANTID"))
// .build();
String endpoint = System.getenv("AZURE_APPCONFIGURATION_ENDPOINT");
ConfigurationClient configurationClient = new ConfigurationClientBuilder()
.credential(credential)
.endpoint(endpoint)
.buildClient();
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.
import os
from azure.appconfiguration import AzureAppConfigurationClient
from azure.identity import ManagedIdentityCredential, ClientSecretCredential
# Uncomment the following lines corresponding to the authentication type you want to use.
# system-assigned managed identity
# cred = ManagedIdentityCredential()
# user-assigned managed identity
# managed_identity_client_id = os.getenv('AZURE_APPCONFIGURATION_CLIENTID')
# cred = ManagedIdentityCredential(client_id=managed_identity_client_id)
# service principal
# tenant_id = os.getenv('AZURE_APPCONFIGURATION_TENANTID')
# client_id = os.getenv('AZURE_APPCONFIGURATION_CLIENTID')
# client_secret = os.getenv('AZURE_APPCONFIGURATION_CLIENTSECRET')
# cred = ClientSecretCredential(tenant_id=tenant_id, client_id=client_id, client_secret=client_secret)
endpoint_url = os.getenv('AZURE_APPCONFIGURATION_ENDPOINT')
client = AzureAppConfigurationClient(base_url="your_endpoint_url", credential=credential)
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.
import { DefaultAzureCredential,ClientSecretCredential } from "@azure/identity";
const appConfig = require("@azure/app-configuration");
// Uncomment the following lines corresponding to the authentication type you want to use.
// for system-assigned managed identity
// const credential = new DefaultAzureCredential();
// for user-assigned managed identity
// const clientId = process.env.AZURE_APPCONFIGURATION_CLIENTID;
// const credential = new DefaultAzureCredential({
// managedIdentityClientId: clientId
// });
// for service principal
// const tenantId = process.env.AZURE_APPCONFIGURATION_TENANTID;
// const clientId = process.env.AZURE_APPCONFIGURATION_CLIENTID;
// const clientSecret = process.env.AZURE_APPCONFIGURATION_CLIENTSECRET;
// const credential = new ClientSecretCredential(tenantId, clientId, clientSecret);
const endpoint = process.env.AZURE_APPCONFIGURATION_ENDPOINT;
const client = new appConfig.AppConfigurationClient(
endpoint,
credential
);
Pour les autres langages, vous pouvez utiliser les informations de connexion que le connecteur de services définit sur les variables d’environnement pour vous connecter à Azure App Configuration. Pour plus d’informations sur les variables d’environnement, consultez l’article Intégrer Azure App Configuration au connecteur de services.
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.
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);
Ajoutez les dépendances suivantes dans votre fichier pom.xml :
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.
// Uncomment the following lines corresponding to the authentication type you want to use.
// for system-managed identity
// DefaultAzureCredential defaultCredential = new DefaultAzureCredentialBuilder().build();
// for user-assigned managed identity
// DefaultAzureCredential defaultCredential = new DefaultAzureCredentialBuilder()
// .managedIdentityClientId(System.getenv("AZURE_APPCONFIGURATION_CLIENTID"))
// .build();
// for service principal
// ClientSecretCredential defaultCredential = new ClientSecretCredentialBuilder()
// .clientId(System.getenv("AZURE_APPCONFIGURATION_CLIENTID"))
// .clientSecret(System.getenv("AZURE_APPCONFIGURATION_CLIENTSECRET"))
// .tenantId(System.getenv("AZURE_APPCONFIGURATION_TENANTID"))
// .build();
String endpoint = System.getenv("AZURE_APPCONFIGURATION_ENDPOINT");
ConfigurationClient configurationClient = new ConfigurationClientBuilder()
.credential(credential)
.endpoint(endpoint)
.buildClient();
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.
import os
from azure.appconfiguration import AzureAppConfigurationClient
from azure.identity import ManagedIdentityCredential, ClientSecretCredential
# Uncomment the following lines corresponding to the authentication type you want to use.
# system-assigned managed identity
# cred = ManagedIdentityCredential()
# user-assigned managed identity
# managed_identity_client_id = os.getenv('AZURE_APPCONFIGURATION_CLIENTID')
# cred = ManagedIdentityCredential(client_id=managed_identity_client_id)
# service principal
# tenant_id = os.getenv('AZURE_APPCONFIGURATION_TENANTID')
# client_id = os.getenv('AZURE_APPCONFIGURATION_CLIENTID')
# client_secret = os.getenv('AZURE_APPCONFIGURATION_CLIENTSECRET')
# cred = ClientSecretCredential(tenant_id=tenant_id, client_id=client_id, client_secret=client_secret)
endpoint_url = os.getenv('AZURE_APPCONFIGURATION_ENDPOINT')
client = AzureAppConfigurationClient(base_url="your_endpoint_url", credential=credential)
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.
import { DefaultAzureCredential,ClientSecretCredential } from "@azure/identity";
const appConfig = require("@azure/app-configuration");
// Uncomment the following lines corresponding to the authentication type you want to use.
// for system-assigned managed identity
// const credential = new DefaultAzureCredential();
// for user-assigned managed identity
// const clientId = process.env.AZURE_APPCONFIGURATION_CLIENTID;
// const credential = new DefaultAzureCredential({
// managedIdentityClientId: clientId
// });
// for service principal
// const tenantId = process.env.AZURE_APPCONFIGURATION_TENANTID;
// const clientId = process.env.AZURE_APPCONFIGURATION_CLIENTID;
// const clientSecret = process.env.AZURE_APPCONFIGURATION_CLIENTSECRET;
// const credential = new ClientSecretCredential(tenantId, clientId, clientSecret);
const endpoint = process.env.AZURE_APPCONFIGURATION_ENDPOINT;
const client = new appConfig.AppConfigurationClient(
endpoint,
credential
);
Pour les autres langages, vous pouvez utiliser les informations de connexion que le connecteur de services définit sur les variables d’environnement pour vous connecter à Azure App Configuration. Pour plus d’informations sur les variables d’environnement, consultez l’article Intégrer Azure App Configuration au connecteur de services.
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.
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();
Ajoutez les dépendances suivantes dans votre fichier pom.xml :
Pour les autres langages, vous pouvez utiliser les informations de connexion que le connecteur de services définit sur les variables d’environnement pour vous connecter à Azure App Configuration. Pour plus d’informations sur les variables d’environnement, consultez l’article Intégrer Azure App Configuration au connecteur de services.
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.
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);
Ajoutez les dépendances suivantes dans votre fichier pom.xml :
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.
// Uncomment the following lines corresponding to the authentication type you want to use.
// for system-managed identity
// DefaultAzureCredential defaultCredential = new DefaultAzureCredentialBuilder().build();
// for user-assigned managed identity
// DefaultAzureCredential defaultCredential = new DefaultAzureCredentialBuilder()
// .managedIdentityClientId(System.getenv("AZURE_APPCONFIGURATION_CLIENTID"))
// .build();
// for service principal
// ClientSecretCredential defaultCredential = new ClientSecretCredentialBuilder()
// .clientId(System.getenv("AZURE_APPCONFIGURATION_CLIENTID"))
// .clientSecret(System.getenv("AZURE_APPCONFIGURATION_CLIENTSECRET"))
// .tenantId(System.getenv("AZURE_APPCONFIGURATION_TENANTID"))
// .build();
String endpoint = System.getenv("AZURE_APPCONFIGURATION_ENDPOINT");
ConfigurationClient configurationClient = new ConfigurationClientBuilder()
.credential(credential)
.endpoint(endpoint)
.buildClient();
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.
import os
from azure.appconfiguration import AzureAppConfigurationClient
from azure.identity import ManagedIdentityCredential, ClientSecretCredential
# Uncomment the following lines corresponding to the authentication type you want to use.
# system-assigned managed identity
# cred = ManagedIdentityCredential()
# user-assigned managed identity
# managed_identity_client_id = os.getenv('AZURE_APPCONFIGURATION_CLIENTID')
# cred = ManagedIdentityCredential(client_id=managed_identity_client_id)
# service principal
# tenant_id = os.getenv('AZURE_APPCONFIGURATION_TENANTID')
# client_id = os.getenv('AZURE_APPCONFIGURATION_CLIENTID')
# client_secret = os.getenv('AZURE_APPCONFIGURATION_CLIENTSECRET')
# cred = ClientSecretCredential(tenant_id=tenant_id, client_id=client_id, client_secret=client_secret)
endpoint_url = os.getenv('AZURE_APPCONFIGURATION_ENDPOINT')
client = AzureAppConfigurationClient(base_url="your_endpoint_url", credential=credential)
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.
import { DefaultAzureCredential,ClientSecretCredential } from "@azure/identity";
const appConfig = require("@azure/app-configuration");
// Uncomment the following lines corresponding to the authentication type you want to use.
// for system-assigned managed identity
// const credential = new DefaultAzureCredential();
// for user-assigned managed identity
// const clientId = process.env.AZURE_APPCONFIGURATION_CLIENTID;
// const credential = new DefaultAzureCredential({
// managedIdentityClientId: clientId
// });
// for service principal
// const tenantId = process.env.AZURE_APPCONFIGURATION_TENANTID;
// const clientId = process.env.AZURE_APPCONFIGURATION_CLIENTID;
// const clientSecret = process.env.AZURE_APPCONFIGURATION_CLIENTSECRET;
// const credential = new ClientSecretCredential(tenantId, clientId, clientSecret);
const endpoint = process.env.AZURE_APPCONFIGURATION_ENDPOINT;
const client = new appConfig.AppConfigurationClient(
endpoint,
credential
);
Pour les autres langages, vous pouvez utiliser les informations de connexion que le connecteur de services définit sur les variables d’environnement pour vous connecter à Azure App Configuration. Pour plus d’informations sur les variables d’environnement, consultez l’article Intégrer Azure App Configuration au connecteur de services.
Étapes suivantes
Suivez le tutoriel ci-dessous pour en savoir plus sur Service Connector.