Вот пример того, что я получил из этой записи Джеффа Холлингера.Вот пример кода, который вам нужен в функции:
using Microsoft.Azure.WebJobs;
using Microsoft.Azure.WebJobs.Host;
using Microsoft.Extensions.Logging;
namespace KeyVault
{
public static class MyFunctionClass
{
private static string superSecret = System.Environment.GetEnvironmentVariable("SuperSecret");
[FunctionName("MyFunction")]
public static void Run([EventHubTrigger("eventhub", Connection = "EventHubConnectionString")]string myEventHubMessage, ILogger log)
{
// DISCLAIMER: Never log secrets. Just a demo :)
log.LogInformation($"Shhhhh.. it's a secret: {superSecret}");
}
}
}
Похоже, у вас уже есть секреты в хранилище ключей, поэтому все, что вам не хватает, - это добавить ссылки на хранилище ключей в настройки приложения вашей функции.Вот описание из Microsoft Azure-Functions-Key-Vault docs .
При локальном запуске вы можете добавить значения в файл, например local.settings.json
, например:
{
"IsEncrypted": false,
"Values": {
"AzureWebJobsStorage": "UseDevelopmentStorage=true",
"FUNCTIONS_WORKER_RUNTIME": "dotnet",
"SuperSecret": "I love Azure Functions",
"EventHubConnectionString": "Endpoint=sb://jeffs.servicebus.windows.net/;SharedAccessKeyName=MyFakeKey;SharedAccessKey=NotARealSecret"
}
}