Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Tento článek je hlavní referencí o tom, jak se Azure Functions připojuje k vzdáleným službám. Poskytuje specifické pokyny založené na typu připojení a způsobu autentizace.
Important
Používejte spravované identity s Microsoft Entra ID, kdykoli je to možné. Tato autentizační metoda eliminuje tajemství a poskytuje nejvyšší bezpečnost.
Kategorie připojení
Připojení Azure Functions spadá do těchto základních kategorií:
- Host požadovaný: Spojení, která hostitel Functions potřebuje k provozu, například ukládání a monitorování.
- Vazby: Propojení, která host spravuje pro vaše triggery a vazby.
- Klientské SDK: Spojení, která vytváříte a spravujete ve svém vlastním funkčním kódu.
Tip
Funkce také podporují spravované konektory (v náhledu), které umožňují připojit se ke službám jako Office 365, Teams a SharePoint s vestavěným OAuth a webhookem přes Connector Namespace. Pro více informací viz Použít konektory v Azure Functions.
Hostitel Functions vyžaduje, aby vaše aplikace měla tato konkrétní pojmenovaná spojení, která podporují jak provádění funkcí, tak logování:
AzureWebJobsStorage: Funkce používají tento výchozí úložný účet k umožnění základních chování, jako je koordinace singletonového provádění spouštěčů časovačů a výchozího úložiště pro přístupové klíče funkcí. Hostitel vyžaduje toto spojení s podporovaným úložným účtem. Funkční aplikace se bez tohoto nastavení připojení nemůže spustit. Další informace najdete v části Úvahy o úložišti pro Azure Functions.APPLICATIONINSIGHTS_CONNECTION_STRING: Měli byste také nastavit hostitele, aby zapisoval logy do instance Application Insights.WEBSITE_CONTENTAZUREFILECONNECTIONSTRING: Používá se pouze pro aplikace, které běží v tarifu Consumption nebo v tarifu Elastic Premium. Definuje úložný účet, který obsahuje sdílení Azure Files a udržuje balíček nasazení pro vaši aplikaci.
Metody ověřování
Important
Pokud je to možné, používejte spravované identity pro své spojení. Tento přístup zcela eliminuje tajemství. Pokud cílová služba nepodporuje autentizaci Microsoft Entra ID, použijte Azure Key Vault pro centrální správu tajemství. Sdílená tajemství používejte přímo v nastavení aplikace jen jako poslední možnost.
Funkce podporují tyto autentizační metody při připojení k vzdáleným službám:
| Metoda ověřování | Zabezpečení | Kdy ho použít |
|---|---|---|
| spravované identity | Nejvyšší | Target služba podporuje Microsoft Entra ID. Žádná tajemství ke správě. |
| Azure Key Vault | Vysoko | Služba nepodporuje spravované identity, nebo potřebujete centralizovanou správu tajemství s rotací. |
| Sdílené tajemství | Nízké | Starší výchozí nastavení. Migrujte na spravované identity nebo Key Vault co nejdříve. |
Vyberte preferovanou metodu autentizace v horní části článku a podívejte se na podrobné pokyny k konfiguraci.
Definujte spojení
Za běhu vaše funkční aplikace přistupuje k informacím o připojení jako k proměnným prostředí z těchto míst:
| Životní prostředí | Kde jsou nastavení uložena |
|---|---|
| Azure | Nastavení aplikace (šifrované v klidu) |
| Místní vývoj | local.settings.json (volitelně šifrováno) |
V obou prostředích jsou nastavení vystavena vašemu kódu jako proměnné prostředí. Konkrétní nastavení, která potřebujete, závisí jak na typu připojení , tak na zvolené metodě autentizace .
Když používáte autentizaci Microsoft Entra k připojení k Azure službě, konkrétní nastavení aplikace závisí na připojené službě a na tom, zda používáte systémově přiřazenou nebo uživatelsky přiřazenou identitu k autentizaci připojení.
Identity, které používáte pro svá spojení, musí mít oprávnění k provádění zamýšlených akcí. U většiny Azure služeb tento požadavek znamená, že musíte v Azure RBAC přiřadit roli, a to buď pomocí vestavěných, nebo vlastních rolí, které tato oprávnění poskytují. Pro více informací viz Udělit oprávnění k identitě.
Mějte na paměti tyto faktory při používání spojení založených na identitě:
V aplikaci hostované v Functions používají propojení založená na identitách spravovanou identitu. Systémově přiřazená identita, která je specifická pro vaši aplikaci, se používá ve výchozím nastavení. Nicméně uživatelem přiřazené identity, které také vyžadují
*__credentialvlastnosti a*__clientID, jsou flexibilnější a doporučovány.Když vaše aplikace běží v jiných kontextech, například v lokálním vývoji, používá se místo toho vaše vývojářská identita. Pro více informací viz článek o místním rozvoji .
Připojení založená na identitách jsou podporována pouze ve verzích 4.x a novějších runtime Functions. Pokud spouštíte starší C# aplikaci na verzi 1.x runtime Functions, musíte nejprve migrovat na verzi 4.x.
Můžete nastavit svou funkční aplikaci tak, aby používala identitu místo připojovací řetězec při připojení k výchozímu úložnému účtu (AzureWebJobsStorage) a dalším spojením vyžadovaným hostitelem.
Podpora spravované identity pro AzureWebJobsStorage se liší podle hostingového plánu:
| Plán hostování | MI pro hostitelské úložiště | Požadavek na Azure Files | Recommendation |
|---|---|---|---|
| Flex Consumption | Úplná podpora | Žádné (žádné soubory Azure) | Doporučeno pro MI |
| Dedicated (App Service) | Úplná podpora | Žádné (žádné dynamické škálování) | Plná podpora MI, není potřeba žádné náhradní řešení |
| Spotřeba | Objekty blob, fronty, tabulky | Key Vault nebo odstranit Azure Files | Uložit WEBSITE_CONTENTAZUREFILECONNECTIONSTRING v Key Vault |
| Elastic Premium | Objekty blob, fronty, tabulky | Key Vault nebo odstranit Azure Files | Uložit WEBSITE_CONTENTAZUREFILECONNECTIONSTRING v Key Vault |
Před použitím spravovaných identit pro připojení vyžadovaná hostitelem zvažte tato omezení:
Pro tarify Consumption a Premium implementujte jeden z těchto obcházení pro Azure Files:
- Ukládejte pouze
WEBSITE_CONTENTAZUREFILECONNECTIONSTRINGpřipojovací řetězec v Key Vault, což je další nejbezpečnější možnost. - Vytvořte aplikaci pro Consumption nebo Premium plán, která běží bez Azure Files. Při spuštění bez Azure Files dochází k dopadům na výkon. Další informace najdete v tématu Vytvoření aplikace bez Azure Files.
- Ukládejte pouze
Tyto spouštěče vyžadují pro správné fungování
AzureWebJobsStorage:- Azure Blob Storage
- Azure Event Hubs
- Durable Functions (výchozí)
- Timer
Pokud vaše aplikace používá některé z těchto rozšíření, ujistěte se, že její verze podporuje také spravované identity.
AzureWebJobsStorageuchovává artefakty nasazení při vzdálených sestaveních na straně serveru v rámci plánu Linux Consumption. V tomto případě musíte aplikaci nasadit a spustit z externího balíčku nasazení.Další součásti vaší aplikace funkcí mohou znovu používat připojení
AzureWebJobsStorage, což může zahrnovat rozšíření vazeb úložiště nebo klienty úložiště vytvořené pomocí sady Azure SDK. Při používání spravovaných identit vytvořte nová nastavení aplikací pro tyto nehostující komponenty, i když podporují spravované identity.
Tato konkrétní nastavení aplikace definují připojení založená na identitě jak k AzureWebJobsStorage, tak k APPLICATIONINSIGHTS_CONNECTION_STRING. Pro úložný účet, který používá standardní Azure DNS endpointy, nastavte AzureWebJobsStorage__accountName. Pro úložný účet v suverénním cloudu nebo který používá vlastní DNS, nastavte místo toho tři specifická URI nastavení pro službu.
| Setting | Description |
|---|---|
AzureWebJobsStorage__accountName |
Název výchozího úložného účtu. Toto nastavení použijte, když účet používá standardní Azure DNS endpointy. Tato syntaxe je jedinečná pro AzureWebJobsStorage. |
AzureWebJobsStorage__blobServiceUri |
URI pro Blob Storage ve výchozím úložném účtu. Vyžadováno pro suverénní cloudy nebo vlastní DNS úložiště, například: https://mystorageaccount.blob.contoso.com.
HTTPS je povinné. |
AzureWebJobsStorage__queueServiceUri |
URI pro Queue Storage ve výchozím úložném účtu. Vyžadováno pro suverénní cloudy nebo vlastní DNS úložiště, například: https://mystorageaccount.queue.contoso.com.
HTTPS je povinné. |
AzureWebJobsStorage__tableServiceUri |
URI pro ukládání tabulek ve výchozím účtu úložiště. Vyžadováno pro suverénní cloudy nebo vlastní DNS úložiště, například: https://mystorageaccount.table.contoso.com.
HTTPS je povinné. |
AzureWebJobsStorage__credential |
Nastavte na managedidentity, chcete-li použít ověřování pomocí spravované identity. Spravovaná identita musí být dostupná v hostitelském prostředí. |
AzureWebJobsStorage__clientId neboAzureWebJobsStorage__managedIdentityResourceId |
Vrátí konkrétní uživatelem přiřazenou identitu použitou k získání přístupového tokenu pro ověřenou autentizaci identity. Pokud není nastaveno ani jedno, použije se systémově přiřazená identita aplikace. |
APPLICATIONINSIGHTS_AUTHENTICATION_STRING |
Umožňuje připojení k Application Insights pomocí autentizace Microsoft Entra. Nastavte buď ( Authorization=AAD systémově přiřazené), nebo ClientId=<YOUR_CLIENT_ID>;Authorization=AAD (uživatelem přiřazené). |
Protože hodnota dvojitého podtržítka (__) je za běhu interpretována jako dvojtečka (:), série nastavení je interpretována jako vlastnosti objektu AzureWebJobsStorage . Vyberte příklad, který odpovídá konfiguraci vašeho úložného účtu.
Používejte standardní koncové body Azure DNS pro AzureWebJobsStorage
Pro úložný účet, který používá standardní Azure DNS endpointy, použijte tato nastavení aplikace:
AzureWebJobsStorage__accountName=<ACCOUNT_NAME>AzureWebJobsStorage__credential=managedidentityAzureWebJobsStorage__clientId=<MY_USER_ASSIGNED_IDENTITY_ID>
Za běhu hostitel interpretuje tato nastavení jako složité AzureWebJobsStorage nastavení:
"AzureWebJobsStorage":
{
"accountName": "<ACCOUNT_NAME>",
"credential": "managedidentity",
"clientId": "<MY_USER_ASSIGNED_IDENTITY_ID>"
}
Použijte vlastní DNS nebo suverénní cloudové endpointy pro AzureWebJobsStorage
Pro úložný účet, který používá vlastní DNS nebo je v suverénním cloudu, použijte tato nastavení aplikace:
AzureWebJobsStorage__blobServiceUri=https://<ACCOUNT_NAME>.blob.contoso.comAzureWebJobsStorage__queueServiceUri=https://<ACCOUNT_NAME>.queue.contoso.comAzureWebJobsStorage__tableServiceUri=https://<ACCOUNT_NAME>.table.contoso.comAzureWebJobsStorage__credential=managedidentityAzureWebJobsStorage__clientId=<MY_USER_ASSIGNED_IDENTITY_ID>
Za běhu hostitel interpretuje tato nastavení jako složité AzureWebJobsStorage nastavení:
"AzureWebJobsStorage":
{
"blobServiceUri": "https://<ACCOUNT_NAME>.blob.contoso.com",
"queueServiceUri": "https://<ACCOUNT_NAME>.queue.contoso.com",
"tableServiceUri": "https://<ACCOUNT_NAME>.table.contoso.com",
"credential": "managedidentity",
"clientId": "<MY_USER_ASSIGNED_IDENTITY_ID>"
}
Musíte také udělit oprávnění pro identitu ve výchozím úložném účtu, aby se hostitel mohl připojit s dostatečnými oprávněními pro provádění požadovaných úkolů. Pro zjištění jak, viz Udělit oprávnění k identitě.
Udělení oprávnění k identitě
Když používáte spravované identity s autentizací Microsoft Entra ID, musíte při navazování spojení s vzdálenou službou konkrétně přiřadit oprávnění k identitě, kterou vaše aplikace používá. Nejjednodušší způsob, jak udělit aplikaci práva s nejmenšími privilegiováními, je přiřadit vestavěné role.
Mějte na paměti tato doporučení při udělování RBAC oprávnění k identitám vaší aplikace:
- Kdykoli je to možné, dodržujte princip nejmenších privilegií a udělujte identitě pouze minimální požadovaná privilegia. Například pokud aplikace potřebuje číst pouze ze zdroje, použijte roli, která má oprávnění pouze ke čtení a ne k zápisu dat.
- Nepoužívejte široké vestavěné role jako Vlastník, ani jen proto, abyste aplikaci rozběhli.
- Po vytvoření nebo úpravě přiřazení role může trvat až 10 minut, než se změna rozšíří. Během této doby může vaše funkce dostávat chyby autorizace (403), i když je role správně přiřazena. Pokud narazíte na chyby ihned po vytvoření přiřazení role, počkejte pár minut a zkuste to znovu.
- Když více připojení vyžaduje oprávnění ke stejné službě, použijte roli, která představuje minimální podmnožinu oprávnění pro všechna spojení k této službě.
- Několik vazeb vyžaduje širší oprávnění ve vašem úložném účtu, než vyžaduje
AzureWebJobsStoragesamotné připojení. - Pro přístup ke klíčům v Key Vault pomocí spravovaných identit přiřaďte aplikaci roli Key Vault Secrets uživatele. Můžete také použít přístupovou politiku Key Vault k přiřazení oprávnění Získat tajemství spravované identitě. Pro více informací viz Udělení identity ve vaší aplikaci přístup ke svému trezoru klíčů.
- Tento článek se týká pouze vestavěných rolí , které poskytují minimální oprávnění. Podle požadavků vaší aplikace možná budete muset vytvořit vlastní vlastní role.
Oprávnění, která potřebujete, závisí na typu připojení:
AzureWebJobsStorage: Role vlastníka dat Storage Blob poskytuje minimální oprávnění k úložnému účtu pro připojení požadovanéAzureWebJobsStoragehostitelem. Tato role poskytuje úroveň přístupu k úložišti, kterou hostitel Functions potřebuje, přičemž se řídí principem nejmenších oprávnění.U některých typů problémů mohou Funkce spustit diagnostické události, které vám pomohou s řešením problémů, i když se aplikace nemůže spustit. Musíte také přidat roli Storage Table Data Contributor , která poskytuje přístup k Table Storage, kde jsou tyto diagnostické události uchovávány. Bez těchto dodatečných oprávnění můžete ve svých logech vidět varování o nemožnosti tyto události zaznamenat.
Některá další propojení mohou vyžadovat poněkud širší roli. Sloupec Host-required storage v tabulce v záložce Bindings uvádí tyto požadavky na roli.
APPLICATIONINSIGHTS_AUTHENTICATION_STRING: Role Monitoring Metrics Publisher uděluje minimální oprávnění, která hostitel potřebuje k připojení k Application Insights pro logování.
Poznámka:
Při použití APPLICATIONINSIGHTS_AUTHENTICATION_STRING pro připojení k Application Insights pomocí ověřování Microsoft Entra byste také měli zakázat místní ověřování pro Application Insights. Tato konfigurace vyžaduje ověřování Microsoft Entra, aby mohla být telemetrie začleněna do vašeho pracovního prostoru.
Poznámka:
Key Vault používejte pouze pro připojení, která momentálně nepodporují Microsoft Entra ID s Azure spravovanými identitami.
Protože některé služby zatím nepodporují autentizaci Microsoft Entra, vaše aplikace může v určitých případech stále vyžadovat tajemství. V těchto případech může Azure Key Vault pomoci zefektivnit životní cyklus správy autentizace založené na tajemstvích. Vaše aplikace může používat Key Vault k bezpečnějšímu ukládání a přístupu ke sdíleným tajemstvím, včetně výchozího připojovací řetězec k úložišti. Ačkoliv spojení stále používají sdílená tajemství, Key Vault poskytuje vyšší úroveň zabezpečení vašich tajemství, včetně údržby a rotace klíčů. Vaše aplikace se může připojit k Key Vault pomocí spravovaných identit, i když služba sama zatím nepodporuje spravovaná připojení založená na identitách.
Když používáte Key Vault, vytvořte nastavení aplikace pro připojení pomocí reference na Key Vault místo skutečného tajemství. Pro více informací viz Nastavení aplikace Source v Key Vault.
Mějte na paměti tyto faktory při udržování spojení v Key Vault:
Pro přístup ke klíčům v trezoru musíte ve své aplikaci udělit identitu a přístup ke trezoru klíčů.
Key Vault můžete použít k ukládání nastavení pro vaše spravovaná připojení založená na identitách. Když vaše aplikace používá Key Vault, musí reference používat oddělovač
:klíčů nebo/, napříkladStorage1:blobServiceUri. Když použijete obvyklý oddělovač nastavení aplikace__, názvy odkazů se nevyhodnocují správně.
Můžete nakonfigurovat nastavení AzureWebJobsStorage tak, aby vracelo odkaz na Key Vault, který obsahuje připojovací řetězec, místo samotného připojovacího řetězce. Jak na to, viz Použití odkazů na Key Vault jako nastavení aplikace.
Azure Files momentálně nepodporuje spravovaná připojení k identitám. Kvůli tomuto omezení použijte Key Vault k zabezpečení WEBSITE_CONTENTAZUREFILECONNECTIONSTRING nastavení, což je nutné pro dynamické škálování jak u tarifů Consumption, tak u prémiových plánů.
Plán Flex Consumption je také dynamický plán, který nepoužívá Azure Files a plně podporuje spravovaná připojení k identitám.
Caution
Vyhněte se práci přímo se sdílenými tajemstvími. Kdykoli je to možné, používejte bezpečnější způsob autentizace pro své připojení.
Zmírněte potenciální rizika ztráty nebo kompromitování tajemství použitím spravovaných identit s autentizací Microsoft Entra ID. Když vzdálená služba nepodporuje spravované identity, alespoň použijte Azure Key Vault, který bezpečněji uchovává sdílená tajemství.
Pokud z nějakého důvodu nemůžete použít bezpečnější autentizační metodu, platforma šifruje data v nastavení aplikace v klidovém režimu. Migrujte své aplikace od sdílení tajemství k bezpečnější autentizační metodě co nejdříve.
Nastavte připojovací řetězec pro výchozí úložný účet v nastavení AzureWebJobsStorage. Toto nastavení je výchozí chování připojení při vytváření funkční aplikace.
Správa připojení ke SDK klientům
Když vytváříte vlastní klientská SDK připojení v kódu funkcí, vždy znovu používejte klientské instance napříč invokacemi, místo abyste vytvářeli nové. Tato osvědčená praxe na všech hostingových plánech snižuje latenci, zabraňuje vyčerpání socketů a zlepšuje efektivitu zdrojů.
Opětovné použití klientských instancí
Dodržujte tyto pokyny při používání klienta specifického pro službu v aplikaci Azure Functions:
- Nevytvářejte nového klienta s každým voláním funkce.
- Vytvořte jednoho sdíleného klienta, kterého může každé volání funkce znovu použít.
- Zvažte vytvoření jednoho sdíleného klienta v pomocné třídě, pokud různé funkce používají stejnou službu.
Doporučený přístup závisí na vašem jazyce:
Pomocí vkládání závislostí zaregistrujte klienty typu singleton nebo scoped.
Viz příklady klientského kódu pro kompletní vzory v každém jazyce.
Limity připojení v tarifu Consumption
Poznámka:
Omezení pevného připojení popsaná v této části platí pouze pro starší plán Consumption. Plán Flex Consumption neběží ve stejném sandboxovém prostředí a tyto limity neukládá. Nicméně opětovné používání klientů je i nadále doporučeno ve všech tarifech kvůli optimálnímu výkonu.
V starším plánu Consumption běží funkční aplikace v sandboxovém prostředí , které omezuje počet odchozích spojení na 600 aktivních (celkem 1 200) na instanci. Když dosáhnete tohoto limitu, hostitel Functions zapíše do logů následující zprávu: Host thresholds exceeded: Connections. Další informace najdete v omezeních služby Functions.
Toto omezení platí pro každou instanci. Když řadič škálování přidá instance aplikace funkcí pro zpracování více požadavků, každá instance má nezávislý limit připojení. To znamená, že neexistuje globální limit připojení a můžete mít více než 600 aktivních připojení napříč všemi aktivními instancemi.
Při řešení problémů s připojením se ujistěte, že máte ve své funkční aplikaci zapnuté Application Insights. Application Insights umožňuje zobrazit metriky pro funkční aplikace, například jejich spuštění. Další informace najdete v tématu Zobrazení telemetrie v Application Insights.
Příklady klientského kódu
Tato část ukazuje osvědčené postupy pro vytváření a používání klientů z kódu funkce.
HTTP požadavky
Zaregistrujte sdíleného HttpClienta pomocí injekce závislostí, aby všechny volání funkcí znovu použily stejnou instanci. V tomto případě nemusíte klienta likvidovat, protože runtime řídí jeho životnost.
using Microsoft.Azure.Functions.Extensions.DependencyInjection;
using Microsoft.Extensions.DependencyInjection;
[assembly: FunctionsStartup(typeof(MyNamespace.Startup))]
namespace MyNamespace;
public class Startup : FunctionsStartup
{
public override void Configure(IFunctionsHostBuilder builder)
{
builder.Services.AddHttpClient();
}
}
Poté vložte IHttpClientFactory nebo HttpClient do své třídy funkce:
using Microsoft.Azure.Functions.Worker;
using Microsoft.Extensions.Logging;
namespace MyNamespace;
public class MyFunction(HttpClient httpClient, ILogger<MyFunction> logger)
{
[Function("MyFunction")]
public async Task Run([TimerTrigger("0 */5 * * * *")] TimerInfo timer)
{
var response = await httpClient.GetAsync("https://example.com");
logger.LogInformation("Response status: {Status}", response.StatusCode);
}
}
Azure Cosmos DB clients
Zaregistrujte singleton CosmosClient ve svém startupu, aby všechny funkce sdílely jedno připojení. Dokumentace Azure Cosmos DB doporučuje používat singleton klienta po celou dobu existence aplikace.
using Microsoft.Azure.Cosmos;
using Microsoft.Azure.Functions.Extensions.DependencyInjection;
using Microsoft.Extensions.DependencyInjection;
[assembly: FunctionsStartup(typeof(MyNamespace.Startup))]
namespace MyNamespace;
public class Startup : FunctionsStartup
{
public override void Configure(IFunctionsHostBuilder builder)
{
builder.Services.AddSingleton(_ =>
{
var connectionString = Environment.GetEnvironmentVariable("CosmosDBConnection");
return new CosmosClient(connectionString);
});
}
}
Pak vstříkněte CosmosClient do své funkční třídy:
using Microsoft.Azure.Cosmos;
using Microsoft.Azure.Functions.Worker;
using Microsoft.Extensions.Logging;
namespace MyNamespace;
public class MyCosmosFunction(CosmosClient cosmosClient, ILogger<MyCosmosFunction> logger)
{
private readonly Container _container = cosmosClient.GetContainer("mydb", "mycontainer");
[Function("MyCosmosFunction")]
public async Task Run([TimerTrigger("0 */5 * * * *")] TimerInfo timer)
{
var item = new { id = "myId", partitionKey = "myPartitionKey", data = "example" };
await _container.UpsertItemAsync(item, new PartitionKey("myPartitionKey"));
logger.LogInformation("Item upserted");
}
}
Připojení služby SqlClient
Kód funkce může použít rozhraní .NET Framework Zprostředkovatel dat pro SQL Server (SqlClient) k vytvoření připojení k relační databázi SQL. Tento poskytovatel je také základním poskytovatelem datových rámců spoléhajících na ADO.NET, jako je Entity Framework. Na rozdíl od připojení HttpClient a DocumentClient ADO.NET ve výchozím nastavení implementuje sdružování připojení. Vzhledem k tomu, že stále dochází k výpadkům připojení, měli byste optimalizovat připojení k databázi. Další informace najdete v tématu Sdružování připojení k SQL Serveru (ADO.NET).
Tip
Některé datové architektury, jako je Entity Framework, obvykle získávají připojovací řetězec z části ConnectionStrings konfiguračního souboru. V tomto případě musíte explicitně přidat připojovací řetězce SQL do kolekce Připojovací řetězce v nastavení vaší funkční aplikace a do souboru local.settings.json ve vašem místním projektu. Pokud vytváříte instanci SqlConnection ve svém funkčním kódu, uložte hodnotu připojovací řetězec do nastavení aplikace spolu s ostatními připojeními.
Azure App Configuration
Azure App Configuration je Azure služba, kterou můžete použít k centrální správě nastavení aplikace. App Configuration podporuje hierarchicky uspořádané páry klíč–hodnota a verzování a integruje se se službou Azure Key Vault pro bezpečnější správu tajných údajů. Další informace najdete v tématu Co je Azure App Configuration?
Pro lepší bezpečnost vaše funkční aplikace používá spravované identity s autentizací Microsoft Entra pro přístup k nastavení v App Store. Další informace najdete v tématu Použití odkazů na App Configuration pro Azure Functions.
Poznámka:
Při použití Azure App Configuration k ukládání nastavení pro připojení založená na spravované identitě musí odkazy používat jako oddělovač klíčů : nebo / ve formátu <CONNECTION_NAME_PREFIX>:fullyQualifiedNamespace. Když použijete obvyklý oddělovač nastavení aplikace __, názvy odkazů se nevyhodnocují správně.
Související obsah
Používejte konektory v Azure Functions — Připojte se ke službám jako Office 365, Teams a SharePoint pomocí spravovaných konektorů s vestavěným OAuth a webhookem.
Další informace o tom, proč používat statické klienty, najdete v části Improper instantiation antipattern.
Další tipy k výkonu služby Azure Functions najdete v tématu Optimalizace výkonu a spolehlivosti služby Azure Functions.