#azure #azure-web-app-service #azure-keyvault
#azure #azure-web-app-service #azure-keyvault
Вопрос:
Я создал участника службы для своей локальной разработки через переменную AzureServicesAuthConnectionString
среды и предоставил этому участнику доступ к keyvault. Однако, когда я читаю configuration["secret"]
секрет в хранилище ключей, он равен нулю, и если я проверяю поставщиков в объекте конфигурации, я не вижу поставщика keyvault, только поставщиков json для моих файлов appsettings. Есть ли какой-то шаг, который я пропускаю?
Ответ №1:
Я создаю веб-приложение .net core и хорошо тестирую его на своем сайте. Вот код, на который вы могли бы сослаться.
В Program.cs:
public static IWebHostBuilder CreateWebHostBuilder(string[] args) =>
WebHost.CreateDefaultBuilder(args)
.ConfigureAppConfiguration(builder =>
{
var azureServiceTokenProvider = new AzureServiceTokenProvider();
var keyVaultClient =new KeyVaultClient(
new KeyVaultClient.AuthenticationCallback(azureServiceTokenProvider.KeyVaultTokenCallback));
builder.AddAzureKeyVault("https://yourkeyvaultname.vault.azure.net/",
keyVaultClient, new DefaultKeyVaultSecretManager());
})
.UseStartup<Startup>();
В HomeController.cs:
private readonly IConfiguration _configuration;
public HomeController(IConfiguration configuration)
{
_configuration = configuration;
}
public IActionResult Index()
{
ViewBag.Secret = _configuration["yoursecretname"];
return View();
}
Снимок:
Для получения более подробной информации вы можете обратиться к этой статье.
Ответ №2:
Вы можете попробовать новую функцию, которую мы должны просто передать секрет непосредственно в настройки приложения.
Вот блог, в котором показано, как это настроить. Это просто и работает также с помощью развертывания шаблонов.
https://learn.microsoft.com/en-us/azure/app-service/app-service-key-vault-references
Комментарии:
1. Будучи новичком в Azure, для меня все это китайский.