Я хочу использовать пользовательские секреты для клиентской базы KeyVault и т. Д. Я вызываю свои конфиги с program.cs
при настройке KeyVault.Когда я добавляю значения в appsettings.json
, все работает нормально, но если я удаляю его и управляю пользовательскими секретами, он всегда говорит «ноль», когда мой program.cs
работает.
И у меня есть правильные значения в созданном secret.json
, и атрибут с guid к нему также находится в моем файле проекта
Я также попытался добавить ключ и значение кsecret.json
и попытался получить его от контроллера, и он также нулевой.
Похоже, что WebHost.CreateDefaultBuilder
в моем program.se
не загружает мой secret.json
файл.
И если я добавлю AssUserSecrets
к моему WebHost.CreateDefaultBuilder(args)
в progam.cs
, разницы не будет, та же проблема.
Я использую WebHost.CreateDefaultBuilder
, поэтому он будет использоваться по умолчанию в ядре asp .net 2.2
dontnet user-secret list
Будет также показаны значения для меня из моего файла secret.json
, поэтомузначение есть, секрет пользователя был инициализирован.
dontnet user-secret init
Кроме того, скажите, что он уже настроен.
Но все равно просто ноль при вызове моих secret.json
атрибутов
public static IWebHostBuilder CreateWebHostBuilder(string[] args) =>
WebHost.CreateDefaultBuilder(args)
.UseStartup<Startup>()
.ConfigureServices(services => services.AddAutofac())
.ConfigureAppConfiguration((context, builder) =>
{
var config = builder.Build();
var vault = config["KeyVault:Vault"];
builder.AddAzureKeyVault($"https://{config["KeyVault:Vault"]}.vault.azure.net/", config["KeyVault:ClientId"], config["KeyVault:ClientSecret"]);
});