private static void AddHashiCorpCriticalExceptions(SecretStoreBuilder builder) { // Thrown when the HashiCorp Vault's authentication and/or authorization fails. builder.AddCriticalException <VaultApiException>(exception => { return(exception.HttpStatusCode == HttpStatusCode.BadRequest || exception.HttpStatusCode == HttpStatusCode.Forbidden); }); }
public void AddCriticalException_WithoutExceptionFilter_Throws() { // Arrange var services = new ServiceCollection(); var builder = new SecretStoreBuilder(services); // Act / Assert Assert.ThrowsAny <ArgumentException>( () => builder.AddCriticalException <AuthenticationException>(exceptionFilter: null)); }
private static SecretStoreBuilder AddHashiCorpVault( SecretStoreBuilder builder, VaultClientSettings settings, string secretPath, HashiCorpVaultOptions options, Func <string, string> mutateSecretName) { // Thrown when the HashiCorp Vault's authentication and/or authorization fails. builder.AddCriticalException <VaultApiException>(exception => { return(exception.HttpStatusCode == HttpStatusCode.BadRequest || exception.HttpStatusCode == HttpStatusCode.Forbidden); }); return(builder.AddProvider(serviceProvider => { var logger = serviceProvider.GetService <ILogger <HashiCorpSecretProvider> >(); var provider = new HashiCorpSecretProvider(settings, secretPath, options, logger); return provider; }, mutateSecretName)); }