106. 配置 PropertySourceLocator 行为

Spring Cloud Vault 使用基于属性的配置为通用和发现的 Secret 后端创建PropertySource

发现的后端提供VaultSecretBackendDescriptor bean 来描述将 Secret 后端用作PropertySource的配置状态。创建一个SecretBackendMetadata对象(包含路径,名称和属性转换配置)需要SecretBackendMetadataFactory

SecretBackendMetadata用于支持特定的PropertySource

您可以注册任意数量的实现VaultConfigurer的 bean 进行自定义。如果 Spring Cloud Vault 发现至少一个VaultConfigurer bean,则会禁用默认的通用和发现的后端注册。但是,您可以使用SecretBackendConfigurer.registerDefaultGenericSecretBackends()SecretBackendConfigurer.registerDefaultDiscoveredSecretBackends()启用默认注册。

public class CustomizationBean implements VaultConfigurer {

    @Override
    public void addSecretBackends(SecretBackendConfigurer configurer) {

        configurer.add("secret/my-application");

        configurer.registerDefaultGenericSecretBackends(false);
        configurer.registerDefaultDiscoveredSecretBackends(true);
    }
}

Note

所有定制都必须在引导上下文中进行。将配置类添加到应用程序中org.springframework.cloud.bootstrap.BootstrapConfigurationMETA-INF/spring.factories