Megosztás a következőn keresztül:


Rövid útmutató: Azure Functions-alkalmazás létrehozása Azure-alkalmazás konfigurációval

Ez a rövid útmutató bemutatja, hogyan központosíthatja és kezelheti az Azure Functions-alkalmazás beállításait a kódon kívül az Azure App Configuration használatával. A .NET-konfigurációszolgáltató integrációjával az alkalmazáskonfigurációt további konfigurációs forrásként is hozzáadhatja néhány egyszerű kódmódosítással.

Előfeltételek

Kulcs-érték hozzáadása

Adja hozzá a következő kulcsértéket az Alkalmazáskonfigurációs áruházhoz, és hagyja meg a címke és a tartalomtípus alapértelmezett értékeit. Ha többet szeretne tudni arról, hogyan adhat hozzá kulcsértékeket egy áruházhoz az Azure Portal vagy a parancssori felület használatával, lépjen a Kulcs-érték létrehozása elemre.

Kulcs Érték
TestApp:Settings:Message Adatok Azure-alkalmazás konfigurációjából

Függvényalkalmazás létrehozása

Azure Functions-alkalmazás létrehozása a Visual Studióval az Azure Functions (C#) sablon kiválasztásával. Ez a sablon végigvezeti a projekt alapvető beállításainak konfigurálásán. Részletes útmutatásért lásd: Azure Functions fejlesztése a Visual Studióval.

A függvényalkalmazás létrehozásakor használja az alábbi táblázatot a kulcsparaméterek hivatkozásaként.

Beállítás Érték
Függvények feldolgozója .NET 8.0 Izolált
Funkció HTTP-eseményindító
Engedélyszint Névtelen

Feljegyzés

Az Azure App Configuration az Azure Functions szolgáltatással az izolált feldolgozói modellben vagy a folyamatban lévő modellben is használható. Ez a gyorsútmutató példaként használja az izolált feldolgozói modellt. Mindkét modellre vonatkozó teljes kódpéldákat az Azure App Configuration GitHub-adattárban talál.

Csatlakozás alkalmazáskonfigurációs áruházhoz

Az App Configuration szolgáltatáshoz a Microsoft Entra ID (ajánlott) vagy egy csatlakozási karakterlánc használatával csatlakozhat.

  1. Kattintson a jobb gombbal a projektre, és válassza a NuGet-csomagok kezelése lehetőséget. A Tallózás lapon keresse meg és adja hozzá a következő NuGet-csomagok legújabb stabil verzióját a projekthez.

    • Microsoft.Azure.AppConfiguration.Functions.Worker
    • Azure.Identity
  2. Nyissa meg Program.cs , és frissítse a kódot az alábbiak szerint. A AddAzureAppConfiguration metódus meghívásával az Azure App Configurationt további konfigurációs forrásként adja hozzá.

    Az DefaultAzureCredential használatával hitelesítheti magát az Alkalmazáskonfigurációs áruházban. Kövesse az utasításokat a hitelesítő adatainak App Configuration Data Reader szerepkör hozzárendeléséhez. Győződjön meg arról, hogy elegendő időt hagy az engedély propagálására az alkalmazás futtatása előtt.

    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:*");
    });
    
  3. Nyissa meg Function1.cs, és adja hozzá a következő névteret.

    using Microsoft.Extensions.Configuration;
    

    Frissítse a konstruktort, hogy függőséginjektáláson keresztül szerezze be a példányt IConfiguration .

    private readonly IConfiguration _configuration;
    private readonly ILogger<Function1> _logger;
    
    public Function1(IConfiguration configuration, ILogger<Function1> logger)
    {
        _configuration = configuration;
        _logger = logger;
    }
    
  4. Frissítse a metódust, Run hogy beolvassa az értékeket a konfigurációból.

    [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.");
    }
    

A függvény helyi tesztelése

  1. Adja meg a környezeti változót.

    Állítsa a AZURE_APPCONFIG_ENDPOINT nevű környezeti változót az Alkalmazáskonfigurációs áruház végpontjára, amely az Azure Portalon található áruház áttekintésében található.

    Ha a Windows parancssorát használja, futtassa a következő parancsot, és indítsa újra a parancssort a módosítás érvénybe lépésének engedélyezéséhez:

    setx AZURE_APPCONFIG_ENDPOINT "<endpoint-of-your-app-configuration-store>"
    

    Ha a PowerShellt használja, futtassa a következő parancsot:

    $Env:AZURE_APPCONFIG_ENDPOINT = "<endpoint-of-your-app-configuration-store>"
    

    MacOS vagy Linux használata esetén futtassa a következő parancsot:

    export AZURE_APPCONFIG_ENDPOINT='<endpoint-of-your-app-configuration-store>'
    
  2. Nyomja le az F5 billentyűt a függvény teszteléséhez. Ha a rendszer kéri, fogadja el a Visual Studiótól az Azure Functions Core (CLI) eszközeinek letöltésére és telepítésére vonatkozó kérést. Előfordulhat, hogy engedélyeznie kell egy tűzfalkivételt is, hogy az eszközök kezelni tudják a HTTP-kéréseket.

  3. Másolja a függvénye URL-címét az Azure Functions szolgáltatás futtatókörnyezetének kimenetéről.

    Gyorsindítás: függvényhibakeresés a Visual Studio-ban

  4. Illessze be a HTTP-kérelem URL-címét a böngésző címsorába. Az alábbi képen a böngészőben a függvény által visszaadott helyi GET kérésre adott válasz látható.

    Gyorsindítás funkció helyi indítása

Triggerparaméterek kezelése alkalmazáskonfigurációs hivatkozásokkal

Az Azure Functions-eseményindítók határozzák meg a függvények meghívásának módját. A triggerattribútumok, például az üzenetsornevek vagy az adatbázisnevek a gazdagép indítási idején töltődnek be, és nem tudják közvetlenül lekérni az értékeket az Azure App Configurationból. Ezeknek a paramétereknek a kezeléséhez használhatja az Azure Functions és az App Service alkalmazáskonfigurációs referenciaszolgáltatását.

Az alkalmazáskonfiguráció referenciafunkciójával közvetlenül az alkalmazásbeállításokból hivatkozhat az Azure App Configurationban tárolt kulcsértékekre. Az Azure Functions ezeket a hivatkozásokat indításkor feloldja, így központilag és biztonságosan kezelheti az eseményindító paramétereket.

Vegyük például egy üzenetsor-vezérelt függvényalkalmazást. Ahelyett, hogy közvetlenül az eseményindító attribútumban adja meg az üzenetsor nevét, hivatkozhat az Azure App Configurationban tárolt kulcsértékre.

  1. Az Azure App Configuration Store-ban adjon hozzá egy kulcsértéket az üzenetsor nevéhez:

    Kulcs Érték
    TestApp:Storage:QueueName <A sor neve a tárfiókjában>
  2. A függvényalkalmazásban válassza a Beállítások –>Környezeti változók –>Alkalmazásbeállítások lehetőséget az Azure Portalon, és hozzon létre egy alkalmazásbeállítást, amely az alkalmazáskonfigurációs kulcsra hivatkozik:

    Név Érték
    MyQueueName @Microsoft.AppConfiguration(Endpoint=<your-store-endpoint>; Key=TestApp:Storage:QueueName)

    Jótanács

    Ha több kulcsértékkel rendelkezik az Azure App Configurationban, az Azure Portal vagy a parancssori felület használatával kötegelten exportálhatja őket az Azure Functions alkalmazáskonfigurációs hivatkozásaiként .

  3. Engedélyezze az Azure Functions-alkalmazás felügyelt identitását, és rendelje hozzá az Alkalmazáskonfigurációs adatolvasó szerepkört az Alkalmazáskonfigurációs áruházhoz. Az alkalmazáskonfigurációs hivatkozások beállításával kapcsolatos részletes útmutatásért lásd: Alkalmazáskonfigurációs hivatkozások használata az App Service-ben és az Azure Functionsben.

  4. Frissítse a sor által aktivált függvényt, hogy az alkalmazásbeállítást használja:

    [Function("QueueTriggeredFunction")]
    public void Run([QueueTrigger(queueName: "%MyQueueName%")] QueueMessage message)
    {
        _logger.LogInformation($"C# Queue trigger function processed: {message.MessageText}");
    }
    

    Futásidőben az Azure Functions feloldja a %MyQueueName% helyőrzőt az Azure App Configurationban tárolt értékre, így központilag kezelheti az eseményindító paramétereket anélkül, hogy a függvénykódba bekonfigurálja őket.

Az erőforrások megtisztítása

Ha nem szeretné folytatni a cikkben létrehozott erőforrások használatát, törölje az itt létrehozott erőforráscsoportot a díjak elkerülése érdekében.

Fontos

Az erőforráscsoport törlése nem vonható vissza. Az erőforráscsoport és a benne lévő összes erőforrás véglegesen törlődik. Győződjön meg arról, hogy nem véletlenül törli a rossz erőforráscsoportot vagy erőforrásokat. Ha a cikk erőforrásait olyan erőforráscsoporton belül hozta létre, amely más megtartani kívánt erőforrásokat tartalmaz, törölje az egyes erőforrásokat a megfelelő panelről az erőforráscsoport törlése helyett.

  1. Jelentkezzen be az Azure Portalra, és válassza ki az Erőforráscsoportokat.
  2. A Szűrés név szerint mezőbe írja be az erőforráscsoport nevét.
  3. Az eredménylistában válassza ki az erőforráscsoport nevét az áttekintés megtekintéséhez.
  4. Válassza az Erőforráscsoport törlése elemet.
  5. A rendszer az erőforráscsoport törlésének megerősítését kéri. Adja meg a megerősítéshez az erőforráscsoport nevét, és válassza a Törlés lehetőséget.

Néhány pillanat múlva az erőforráscsoport és annak összes erőforrása törlődik.

Következő lépések

Ebben a rövid útmutatóban integrálta az Azure-alkalmazáskonfigurációt egy Azure Functions-alkalmazással. Ha szeretné megtudni, hogyan engedélyezheti a függvényalkalmazásnak a konfigurációs beállítások dinamikus frissítését, folytassa a következő oktatóanyagban.

Ha meg szeretné tudni, hogyan használhatja az Azure-alkalmazáskonfiguráció funkciójelzőit az Azure Functions-alkalmazásban, folytassa az alábbi oktatóanyagkal.

Ha szeretné megtudni, hogyan használhat azure-beli felügyelt identitást az alkalmazáskonfigurációhoz való hozzáférés gördülékenyebbé tételéhez, folytassa az alábbi oktatóanyagban.