public void CreateCorrectConfigKey(string secretName, string configKey) { PrefixKeyVaultSecretManager manager = CreateManager(); KeyVaultSecret secret = new(secretName, string.Empty); manager.GetKey(secret).Should().Be(configKey); }
public void LoadPrefixedValue(string secretName, bool loadIt) { PrefixKeyVaultSecretManager manager = CreateManager(); SecretProperties secret = new(secretName); manager.Load(secret).Should().Be(loadIt); }
public static IWebHostBuilder CreateWebHostBuilder(string[] args) { return(WebHost.CreateDefaultBuilder(args) .ConfigureAppConfiguration((context, config) => { var builtConfig = config.Build(); var keyVault = builtConfig["KeyVault"]; if (keyVault != null) { var prefix = new PrefixKeyVaultSecretManager("App"); var clientSecret = builtConfig["AzureAD:ClientSecret"]; var clientId = builtConfig["AzureAD:ClientId"]; if (String.IsNullOrWhiteSpace(clientSecret) || String.IsNullOrWhiteSpace(clientId)) { // try managed service identity var azureServiceTokenProvider = new AzureServiceTokenProvider(); var keyVaultClient = new KeyVaultClient(new KeyVaultClient.AuthenticationCallback(azureServiceTokenProvider.KeyVaultTokenCallback)); config.AddAzureKeyVault( keyVault, keyVaultClient, prefix ); } else { config.AddAzureKeyVault( keyVault, clientId, clientSecret, prefix ); } } }) .UseStartup <Startup>() .UseSerilog((hostingContext, loggerConfiguration) => loggerConfiguration .ReadFrom.Configuration(hostingContext.Configuration) .Enrich.FromLogContext() .WriteTo.Console())); }