【发布时间】:2021-07-18 01:46:37
【问题描述】:
我计划在 .Net Core 3.1 上创建一个新的 WEBAPI(Azure App Services WEBAPP)。想要将所有 keyvault 机密和应用程序属性键值加载到相同的配置中。下面是我如何发现如何将秘密放入配置中,但我们如何也加载应用程序属性
public static IHostBuilder CreateHostBuilder(string[] args) =>
Host.CreateDefaultBuilder(args)
.ConfigureWebHostDefaults(webBuilder =>
{
webBuilder.UseStartup<Startup>();
})
.ConfigureAppConfiguration((context, config) =>
{
var builtConfig = config.Build();
var vaultName = builtConfig["VaultName"];
var keyVaultClient = new KeyVaultClient(
async (authority, resource, scope) =>
{
var credential = new DefaultAzureCredential(false);
var token = credential.GetToken(
new Azure.Core.TokenRequestContext(
new[] { "https://vault.azure.net/.default" }));
return token.Token;
});
config.AddAzureKeyVault(
vaultName,
keyVaultClient,
new DefaultKeyVaultSecretManager());
});
【问题讨论】:
-
什么应用程序属性?你的意思是在 appsettings.json 中?默认情况下应该包含它们。
标签: c# azure asp.net-core .net-core azure-keyvault