Class VaultAutoConfiguration
- java.lang.Object
-
- org.springframework.cloud.vault.config.VaultAutoConfiguration
-
- Direct Known Subclasses:
VaultBootstrapConfiguration
@Configuration(proxyBeanMethods=false) @ConditionalOnProperty(name="spring.cloud.vault.enabled", matchIfMissing=true) @EnableConfigurationProperties(VaultProperties.class) @Order(2147483642) public class VaultAutoConfiguration extends ObjectAuto-configurationfor Spring Vault support.- Since:
- 3.0
- Author:
- Spencer Gibb, Mark Paluch
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classVaultAutoConfiguration.TaskSchedulerWrapperWrapper to keepTaskSchedulerlocal to Spring Cloud Vault.
-
Constructor Summary
Constructors Constructor 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)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description org.springframework.vault.authentication.ClientAuthenticationclientAuthentication(org.springframework.vault.config.AbstractVaultConfiguration.ClientFactoryWrapper clientFactoryWrapper, org.springframework.vault.client.RestTemplateFactory restTemplateFactory)org.springframework.vault.config.AbstractVaultConfiguration.ClientFactoryWrapperclientHttpRequestFactoryWrapper()Creates aAbstractVaultConfiguration.ClientFactoryWrappercontaining aClientHttpRequestFactory.protected org.springframework.vault.client.RestTemplateBuilderrestTemplateBuilder(org.springframework.http.client.ClientHttpRequestFactory requestFactory)Create aRestTemplateBuilderinitialized withVaultEndpointProviderandClientHttpRequestFactory.org.springframework.vault.client.RestTemplateFactoryvaultRestTemplateFactory(org.springframework.vault.config.AbstractVaultConfiguration.ClientFactoryWrapper clientFactoryWrapper)Create aRestTemplateFactorybean that is used to produceRestTemplate.org.springframework.vault.authentication.SessionManagervaultSessionManager(org.springframework.vault.authentication.ClientAuthentication clientAuthentication, org.springframework.beans.factory.ObjectFactory<VaultAutoConfiguration.TaskSchedulerWrapper> asyncTaskExecutorFactory, org.springframework.vault.client.RestTemplateFactory restTemplateFactory)VaultAutoConfiguration.TaskSchedulerWrappervaultTaskScheduler()Creates a newVaultAutoConfiguration.TaskSchedulerWrapperthat encapsulates a bean implementingTaskSchedulerandAsyncTaskExecutor.org.springframework.vault.core.VaultTemplatevaultTemplate(org.springframework.vault.config.AbstractVaultConfiguration.ClientFactoryWrapper clientFactoryWrapper)Creates aVaultTemplate.
-
-
-
Constructor Detail
-
VaultAutoConfiguration
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)
-
-
Method Detail
-
restTemplateBuilder
protected org.springframework.vault.client.RestTemplateBuilder restTemplateBuilder(org.springframework.http.client.ClientHttpRequestFactory requestFactory)
Create aRestTemplateBuilderinitialized withVaultEndpointProviderandClientHttpRequestFactory. May be overridden by subclasses.- Parameters:
requestFactory- theClientHttpRequestFactory.- Returns:
- the
RestTemplateBuilder. - Since:
- 2.3
- See Also:
clientHttpRequestFactoryWrapper()
-
clientHttpRequestFactoryWrapper
@Bean @ConditionalOnMissingBean public org.springframework.vault.config.AbstractVaultConfiguration.ClientFactoryWrapper clientHttpRequestFactoryWrapper()
Creates aAbstractVaultConfiguration.ClientFactoryWrappercontaining aClientHttpRequestFactory.ClientHttpRequestFactoryis not exposed as root bean becauseClientHttpRequestFactoryis configured withClientOptionsandSslConfigurationwhich are not necessarily applicable for the whole application.- Returns:
- the
AbstractVaultConfiguration.ClientFactoryWrapperto wrap aClientHttpRequestFactoryinstance.
-
vaultRestTemplateFactory
@Bean @ConditionalOnMissingBean public org.springframework.vault.client.RestTemplateFactory vaultRestTemplateFactory(org.springframework.vault.config.AbstractVaultConfiguration.ClientFactoryWrapper clientFactoryWrapper)
Create aRestTemplateFactorybean that is used to produceRestTemplate.- Parameters:
clientFactoryWrapper- theAbstractVaultConfiguration.ClientFactoryWrapper.- Returns:
- the
RestTemplateFactory. - Since:
- 3.0
- See Also:
clientHttpRequestFactoryWrapper()
-
vaultTemplate
@Bean @ConditionalOnMissingBean(org.springframework.vault.core.VaultOperations.class) public org.springframework.vault.core.VaultTemplate vaultTemplate(org.springframework.vault.config.AbstractVaultConfiguration.ClientFactoryWrapper clientFactoryWrapper)
Creates aVaultTemplate.- Parameters:
clientFactoryWrapper- theAbstractVaultConfiguration.ClientFactoryWrapper.- Returns:
- the
VaultTemplatebean. - See Also:
clientHttpRequestFactoryWrapper()
-
vaultTaskScheduler
@Bean @Lazy @ConditionalOnMissingBean(TaskSchedulerWrapper.class) public VaultAutoConfiguration.TaskSchedulerWrapper vaultTaskScheduler()
Creates a newVaultAutoConfiguration.TaskSchedulerWrapperthat encapsulates a bean implementingTaskSchedulerandAsyncTaskExecutor.- Returns:
- the
VaultAutoConfiguration.TaskSchedulerWrapperbean. - See Also:
ThreadPoolTaskScheduler
-
vaultSessionManager
@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)- Parameters:
clientAuthentication- theClientAuthentication.asyncTaskExecutorFactory- theObjectFactoryforVaultAutoConfiguration.TaskSchedulerWrapper.restTemplateFactory- theRestTemplateFactory.- Returns:
- the
SessionManagerfor Vault session management. - See Also:
SessionManager,LifecycleAwareSessionManager
-
clientAuthentication
@Bean @ConditionalOnMissingBean @ConditionalOnAuthentication public org.springframework.vault.authentication.ClientAuthentication clientAuthentication(org.springframework.vault.config.AbstractVaultConfiguration.ClientFactoryWrapper clientFactoryWrapper, org.springframework.vault.client.RestTemplateFactory restTemplateFactory)- Parameters:
clientFactoryWrapper- theAbstractVaultConfiguration.ClientFactoryWrapper.restTemplateFactory- theRestTemplateFactory.- Returns:
- the
ClientAuthenticationto obtain aVaultToken. - See Also:
SessionManager,LifecycleAwareSessionManager
-
-