Note
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier les répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de changer de répertoire.
Ce guide de démarrage rapide vous montre comment centraliser et gérer vos paramètres d’application Azure Functions en dehors de votre code à l’aide d’Azure App Configuration. Avec l’intégration du fournisseur de configuration .NET, vous pouvez ajouter App Configuration en tant que source de configuration supplémentaire avec quelques modifications de code simples.
Prérequis
- Compte Azure avec un abonnement actif. Créez-en un gratuitement.
- Un magasin App Configuration, comme illustré dans le didacticiel pour la création d’un magasin.
- Visual Studio avec la charge de travail de développement Azure.
- Outils Azure Functions.
Ajouter une clé-valeur
Ajoutez la clé-valeur suivante au magasin App Configuration et conservez les valeurs par défaut des options Étiquette et Type de contenu. Pour plus d’informations sur l’ajout de clés-valeurs à un magasin avec le Portail Azure ou l’interface CLI, consultez Création d’une clé-valeur.
| Clé | Valeur |
|---|---|
| TestApp :Settings :Message | Données provenant de Azure App Configuration |
Créer une application de fonction
Créez une application Azure Functions à l’aide de Visual Studio en sélectionnant le modèle Azure Functions (C#). Ce modèle vous guide tout au long de la configuration des paramètres essentiels pour votre projet. Pour obtenir des instructions détaillées, consultez Développer Azure Functions à l’aide de Visual Studio.
Utilisez le tableau suivant comme référence pour les paramètres clés lors de la création de votre application de fonction.
| Paramètre | Valeur |
|---|---|
| Travailleur de fonctions | .NET 8.0 isolé |
| Fonction | Déclencheur HTTP |
| Niveau d’autorisation | Anonyme |
Remarque
Azure App Configuration peut être utilisé avec Azure Functions dans le modèle worker isolé ou dans le modèle in-process. Ce guide de démarrage rapide utilise le modèle de travailleur isolé à titre d'exemple. Vous trouverez des exemples de code complets pour les deux modèles dans le référentiel GitHub Azure App Configuration.
Se connecter à un magasin App Configuration
Vous pouvez vous connecter à votre magasin App Configuration en utilisant Microsoft Entra ID (recommandé) ou une chaîne de connexion.
Cliquez avec le bouton droit sur votre projet, puis sélectionnez Gérer les packages NuGet. Sous l’onglet Parcourir, recherchez et ajoutez la dernière version stable des packages NuGet suivants à votre projet.
- Microsoft.Azure.AppConfiguration.Functions.Worker
- Azure.Identity
Ouvrez Program.cs et mettez à jour le code comme suit. Vous ajoutez Azure App Configuration en tant que source de configuration supplémentaire en appelant la
AddAzureAppConfigurationméthode.Vous utilisez le
DefaultAzureCredentialpour vous authentifier auprès de votre magasin App Configuration. Suivez les instructions pour attribuer à vos informations d’identification le rôle de Lecteur de données de configuration d’application. Veillez à laisser suffisamment de temps pour que l’autorisation se propage avant d’exécuter votre application.using Azure.Identity; using Microsoft.Azure.Functions.Worker.Builder; using Microsoft.Extensions.Configuration; using Microsoft.Extensions.Hosting; var builder = FunctionsApplication.CreateBuilder(args); // Connect to Azure App Configuration builder.Configuration.AddAzureAppConfiguration(options => { Uri endpoint = new(Environment.GetEnvironmentVariable("AZURE_APPCONFIG_ENDPOINT") ?? throw new InvalidOperationException("The environment variable 'AZURE_APPCONFIG_ENDPOINT' is not set or is empty.")); options.Connect(endpoint, new DefaultAzureCredential()) // Load all keys that start with `TestApp:` and have no label .Select("TestApp:*"); });Ouvrez Function1.cs, puis ajoutez l’espace de noms suivant.
using Microsoft.Extensions.Configuration;Mettez à jour le constructeur pour obtenir une instance de
IConfigurationpar injection de dépendance.private readonly IConfiguration _configuration; private readonly ILogger<Function1> _logger; public Function1(IConfiguration configuration, ILogger<Function1> logger) { _configuration = configuration; _logger = logger; }Mettez à jour la méthode
Runpour lire les valeurs de la configuration.[Function("Function1")] public IActionResult Run([HttpTrigger(AuthorizationLevel.Anonymous, "get", "post")] HttpRequest req) { _logger.LogInformation("C# HTTP trigger function processed a request."); // Read configuration data string key = "TestApp:Settings:Message"; string? message = _configuration[key]; return new OkObjectResult(message ?? $"Please create a key-value with the key '{key}' in Azure App Configuration."); }
Tester la fonction en local
Définissez la variable d’environnement.
Définissez la variable d’environnement nommée AZURE_APPCONFIG_ENDPOINT sur le point de terminaison de votre magasin App Configuration qui se trouve sous la Vue d’ensemble de votre magasin dans le Portail Azure.
Si vous utilisez l’invite de commandes Windows, exécutez la commande suivante et redémarrez l’invite pour que la modification soit prise en compte :
setx AZURE_APPCONFIG_ENDPOINT "<endpoint-of-your-app-configuration-store>"Si vous utilisez PowerShell, exécutez la commande suivante :
$Env:AZURE_APPCONFIG_ENDPOINT = "<endpoint-of-your-app-configuration-store>"Si vous utilisez macOS ou Linux, exécutez la commande suivante :
export AZURE_APPCONFIG_ENDPOINT='<endpoint-of-your-app-configuration-store>'Appuyez sur F5 pour tester votre fonction. Si vous y êtes invité, acceptez la requête dans Visual Studio pour télécharger et installer Azure Functions Core (CLI) Tools. Vous devrez peut-être aussi activer une exception de pare-feu afin de permettre aux outils de prendre en charge les requêtes HTTP.
Copiez l’URL de votre fonction à partir de la sortie runtime Azure Functions.
Collez l’URL de la demande HTTP dans la barre d’adresses de votre navigateur. La capture d’écran suivante du navigateur montre la réponse retournée par la fonction, suite à la requête GET locale.
Gérer les paramètres de déclenchement avec les références d'App Configuration
Les déclencheurs Azure Functions définissent la façon dont une fonction est appelée. Les attributs de déclencheur, tels que les noms de file d’attente ou les noms de base de données, sont chargés au moment du démarrage de l’hôte et ne peuvent pas récupérer directement des valeurs à partir d’Azure App Configuration. Pour gérer ces paramètres, vous pouvez utiliser la fonctionnalité de référence App Configuration disponible pour Azure Functions et App Service.
La fonctionnalité de référence App Configuration vous permet de référencer des valeurs clés stockées dans Azure App Configuration directement à partir de vos paramètres d’application. Azure Functions résout ces références au démarrage, ce qui vous permet de gérer les paramètres de déclencheur de manière centralisée et sécurisée.
Par exemple, considérez une fonction déclenchée par une file d’attente. Au lieu de spécifier le nom de file d’attente directement dans l’attribut de déclencheur, vous pouvez référencer une valeur clé stockée dans Azure App Configuration.
Dans votre magasin Azure App Configuration, ajoutez une valeur clé pour votre nom de file d’attente :
Clé Valeur TestApp:Storage:QueueName <Nom de la file d’attente dans votre compte de stockage> Dans votre application de fonction, sélectionnez Paramètres -Variables d’environnement> -Paramètres> dans le portail Azure, puis créez un paramètre d’application qui fait référence à la clé App Configuration :
Nom Valeur MyQueueName @Microsoft.AppConfiguration(Endpoint=<your-store-endpoint>; Key=TestApp:Storage:QueueName)Conseil / Astuce
Si vous avez plusieurs valeurs clés dans Azure App Configuration, vous pouvez les exporter par lots en tant que références App Configuration vers Azure Functions à l’aide du portail Azure ou de l’interface CLI.
Activez l’identité managée pour votre application Azure Functions et attribuez-la au rôle Lecteur de données App Configuration pour votre magasin App Configuration. Pour obtenir des instructions détaillées sur la configuration des références App Configuration, consultez Utiliser les références App Configuration dans App Service et Azure Functions.
Mettez à jour votre fonction déclenchée par la file d’attente pour utiliser le paramètre d’application :
[Function("QueueTriggeredFunction")] public void Run([QueueTrigger(queueName: "%MyQueueName%")] QueueMessage message) { _logger.LogInformation($"C# Queue trigger function processed: {message.MessageText}"); }Au moment de l’exécution, Azure Functions résout l’espace
%MyQueueName%réservé sur la valeur stockée dans Azure App Configuration, ce qui vous permet de gérer les paramètres de déclencheur de manière centralisée sans les coder en dur dans votre code de fonction.
Nettoyer les ressources
Si vous ne souhaitez plus utiliser les ressources créées dans cet article, supprimez le groupe de ressources que vous avez créé ici afin d’éviter des frais.
Important
La suppression d’un groupe de ressources est irréversible. Le groupe de ressources et toutes les ressources qu’il contient sont supprimés définitivement. Veillez à ne pas supprimer accidentellement les mauvaises ressources ou le mauvais groupe de ressources. Si vous avez créé les ressources pour cet article dans un groupe de ressources contenant d’autres ressources que vous souhaitez conserver, supprimez chaque ressource individuellement à partir de son volet, au lieu de supprimer l’intégralité du groupe de ressources.
- Connectez-vous au portail Azure, puis sélectionnez Groupes de ressources.
- Dans la zone Filtrer par nom, entrez le nom de votre groupe de ressources.
- Dans la liste de résultats, sélectionnez le nom du groupe de ressources pour afficher une vue d’ensemble.
- Sélectionnez Supprimer le groupe de ressources.
- Vous êtes invité à confirmer la suppression du groupe de ressources. Entrez le nom de votre groupe de ressources à confirmer, puis sélectionnez Supprimer.
Après quelques instants, le groupe de ressources et toutes ses ressources sont supprimés.
Étapes suivantes
Dans ce guide de démarrage rapide, vous avez intégré Azure App Configuration à une application Azure Functions. Pour savoir comment activer votre application de fonction pour actualiser dynamiquement les paramètres de configuration, passez au tutoriel suivant.
Pour savoir comment utiliser des indicateurs de fonctionnalité à partir d’Azure App Configuration au sein de votre application Azure Functions, passez au tutoriel suivant.
Pour savoir comment utiliser une identité managée Azure pour simplifier l’accès à App Configuration, passez au tutoriel suivant.