@Configuration(proxyBeanMethods=false)
@ConditionalOnProperty(name="spring.cloud.vault.enabled",
matchIfMissing=true)
@EnableConfigurationProperties(value=VaultProperties.class)
@Order(value=2147483642)
public class VaultAutoConfiguration
extends Object
Auto-configuration for Spring Vault support.| Modifier and Type | Class and Description |
|---|---|
static class |
VaultAutoConfiguration.TaskSchedulerWrapper
Wrapper to keep
TaskScheduler local to Spring Cloud Vault. |
| Constructor and Description |
|---|
VaultAutoConfiguration(org.springframework.context.ConfigurableApplicationContext applicationContext,
VaultProperties vaultProperties,
org.springframework.beans.factory.ObjectProvider<org.springframework.vault.client.VaultEndpointProvider> endpointProvider,
org.springframework.beans.factory.ObjectProvider<List<org.springframework.vault.client.RestTemplateCustomizer>> customizers,
org.springframework.beans.factory.ObjectProvider<List<org.springframework.vault.client.RestTemplateRequestCustomizer<?>>> requestCustomizers) |
| Modifier and Type | Method and Description |
|---|---|
org.springframework.vault.authentication.ClientAuthentication |
clientAuthentication(org.springframework.vault.config.AbstractVaultConfiguration.ClientFactoryWrapper clientFactoryWrapper,
org.springframework.vault.client.RestTemplateFactory restTemplateFactory) |
org.springframework.vault.config.AbstractVaultConfiguration.ClientFactoryWrapper |
clientHttpRequestFactoryWrapper()
Creates a
AbstractVaultConfiguration.ClientFactoryWrapper containing a
ClientHttpRequestFactory. |
protected org.springframework.vault.client.RestTemplateBuilder |
restTemplateBuilder(org.springframework.http.client.ClientHttpRequestFactory requestFactory)
Create a
RestTemplateBuilder initialized with VaultEndpointProvider
and ClientHttpRequestFactory. |
org.springframework.vault.client.RestTemplateFactory |
vaultRestTemplateFactory(org.springframework.vault.config.AbstractVaultConfiguration.ClientFactoryWrapper clientFactoryWrapper)
Create a
RestTemplateFactory bean that is used to produce
RestTemplate. |
org.springframework.vault.authentication.SessionManager |
vaultSessionManager(org.springframework.vault.authentication.ClientAuthentication clientAuthentication,
org.springframework.beans.factory.ObjectFactory<VaultAutoConfiguration.TaskSchedulerWrapper> asyncTaskExecutorFactory,
org.springframework.vault.client.RestTemplateFactory restTemplateFactory) |
VaultAutoConfiguration.TaskSchedulerWrapper |
vaultTaskScheduler()
Creates a new
VaultAutoConfiguration.TaskSchedulerWrapper that encapsulates a bean implementing
TaskScheduler and AsyncTaskExecutor. |
org.springframework.vault.core.VaultTemplate |
vaultTemplate(org.springframework.vault.config.AbstractVaultConfiguration.ClientFactoryWrapper clientFactoryWrapper)
Creates a
VaultTemplate. |
public VaultAutoConfiguration(org.springframework.context.ConfigurableApplicationContext applicationContext,
VaultProperties vaultProperties,
org.springframework.beans.factory.ObjectProvider<org.springframework.vault.client.VaultEndpointProvider> endpointProvider,
org.springframework.beans.factory.ObjectProvider<List<org.springframework.vault.client.RestTemplateCustomizer>> customizers,
org.springframework.beans.factory.ObjectProvider<List<org.springframework.vault.client.RestTemplateRequestCustomizer<?>>> requestCustomizers)
protected org.springframework.vault.client.RestTemplateBuilder restTemplateBuilder(org.springframework.http.client.ClientHttpRequestFactory requestFactory)
RestTemplateBuilder initialized with VaultEndpointProvider
and ClientHttpRequestFactory. May be overridden by subclasses.requestFactory - the ClientHttpRequestFactory.RestTemplateBuilder.clientHttpRequestFactoryWrapper()@Bean @ConditionalOnMissingBean public org.springframework.vault.config.AbstractVaultConfiguration.ClientFactoryWrapper clientHttpRequestFactoryWrapper()
AbstractVaultConfiguration.ClientFactoryWrapper containing a
ClientHttpRequestFactory. ClientHttpRequestFactory is not exposed
as root bean because ClientHttpRequestFactory is configured with
ClientOptions and SslConfiguration which are not necessarily
applicable for the whole application.AbstractVaultConfiguration.ClientFactoryWrapper to wrap a ClientHttpRequestFactory
instance.@Bean @ConditionalOnMissingBean public org.springframework.vault.client.RestTemplateFactory vaultRestTemplateFactory(org.springframework.vault.config.AbstractVaultConfiguration.ClientFactoryWrapper clientFactoryWrapper)
RestTemplateFactory bean that is used to produce
RestTemplate.clientFactoryWrapper - the AbstractVaultConfiguration.ClientFactoryWrapper.RestTemplateFactory.clientHttpRequestFactoryWrapper()@Bean @ConditionalOnMissingBean(value=org.springframework.vault.core.VaultOperations.class) public org.springframework.vault.core.VaultTemplate vaultTemplate(org.springframework.vault.config.AbstractVaultConfiguration.ClientFactoryWrapper clientFactoryWrapper)
VaultTemplate.clientFactoryWrapper - the AbstractVaultConfiguration.ClientFactoryWrapper.VaultTemplate bean.clientHttpRequestFactoryWrapper()@Bean @Lazy @ConditionalOnMissingBean(value=VaultAutoConfiguration.TaskSchedulerWrapper.class) public VaultAutoConfiguration.TaskSchedulerWrapper vaultTaskScheduler()
VaultAutoConfiguration.TaskSchedulerWrapper that encapsulates a bean implementing
TaskScheduler and AsyncTaskExecutor.VaultAutoConfiguration.TaskSchedulerWrapper bean.ThreadPoolTaskScheduler@Bean
@ConditionalOnMissingBean
@ConditionalOnAuthentication
public org.springframework.vault.authentication.SessionManager vaultSessionManager(org.springframework.vault.authentication.ClientAuthentication clientAuthentication,
org.springframework.beans.factory.ObjectFactory<VaultAutoConfiguration.TaskSchedulerWrapper> asyncTaskExecutorFactory,
org.springframework.vault.client.RestTemplateFactory restTemplateFactory)
clientAuthentication - the ClientAuthentication.asyncTaskExecutorFactory - the ObjectFactory for
VaultAutoConfiguration.TaskSchedulerWrapper.restTemplateFactory - the RestTemplateFactory.SessionManager for Vault session management.SessionManager,
LifecycleAwareSessionManager@Bean
@ConditionalOnMissingBean
@ConditionalOnAuthentication
public org.springframework.vault.authentication.ClientAuthentication clientAuthentication(org.springframework.vault.config.AbstractVaultConfiguration.ClientFactoryWrapper clientFactoryWrapper,
org.springframework.vault.client.RestTemplateFactory restTemplateFactory)
clientFactoryWrapper - the AbstractVaultConfiguration.ClientFactoryWrapper.restTemplateFactory - the RestTemplateFactory.ClientAuthentication to obtain a
VaultToken.SessionManager,
LifecycleAwareSessionManagerCopyright © 2022 Pivotal Software, Inc.. All rights reserved.