public class VaultTemplate extends Object implements org.springframework.beans.factory.InitializingBean, VaultOperations, org.springframework.beans.factory.DisposableBean
VaultTemplate
will log into
Vault on initialization and use the token throughout the whole lifetime.SessionManager
Constructor and Description |
---|
VaultTemplate()
|
VaultTemplate(VaultEndpoint vaultEndpoint,
ClientAuthentication clientAuthentication)
|
VaultTemplate(VaultEndpoint vaultEndpoint,
org.springframework.http.client.ClientHttpRequestFactory clientHttpRequestFactory,
SessionManager sessionManager)
|
VaultTemplate(VaultEndpointProvider endpointProvider,
org.springframework.http.client.ClientHttpRequestFactory clientHttpRequestFactory,
SessionManager sessionManager)
Create a new
VaultTemplate with a VaultEndpointProvider ,
ClientHttpRequestFactory and SessionManager . |
Modifier and Type | Method and Description |
---|---|
void |
afterPropertiesSet() |
void |
delete(String path)
Delete a path in the secret backend.
|
void |
destroy() |
<T> T |
doWithSession(RestOperationsCallback<T> sessionCallback)
Executes a Vault
RestOperationsCallback . |
<T> T |
doWithVault(RestOperationsCallback<T> clientCallback)
Executes a Vault
RestOperationsCallback . |
List<String> |
list(String path)
Enumerate keys from a secret backend.
|
VaultPkiOperations |
opsForPki() |
VaultPkiOperations |
opsForPki(String path)
Return
VaultPkiOperations if the PKI backend is mounted on a different path
than pki . |
VaultSysOperations |
opsForSys() |
VaultTokenOperations |
opsForToken() |
VaultTransitOperations |
opsForTransit() |
VaultTransitOperations |
opsForTransit(String path)
Return
VaultTransitOperations if the transit backend is mounted on a
different path than transit . |
VaultResponse |
read(String path)
Read from a secret backend.
|
<T> VaultResponseSupport<T> |
read(String path,
Class<T> responseType)
Read from a secret backend.
|
void |
setSessionManager(SessionManager sessionManager)
Set the
SessionManager . |
VaultResponse |
write(String path,
Object body)
Write to a secret backend.
|
public VaultTemplate()
public VaultTemplate(VaultEndpoint vaultEndpoint, ClientAuthentication clientAuthentication)
vaultEndpoint
- must not be null.clientAuthentication
- must not be null.public VaultTemplate(VaultEndpoint vaultEndpoint, org.springframework.http.client.ClientHttpRequestFactory clientHttpRequestFactory, SessionManager sessionManager)
vaultEndpoint
- must not be null.clientHttpRequestFactory
- must not be null.sessionManager
- must not be null.public VaultTemplate(VaultEndpointProvider endpointProvider, org.springframework.http.client.ClientHttpRequestFactory clientHttpRequestFactory, SessionManager sessionManager)
VaultTemplate
with a VaultEndpointProvider
,
ClientHttpRequestFactory
and SessionManager
.endpointProvider
- must not be null.clientHttpRequestFactory
- must not be null.sessionManager
- must not be null.public void setSessionManager(SessionManager sessionManager)
SessionManager
.sessionManager
- must not be null.public void afterPropertiesSet()
afterPropertiesSet
in interface org.springframework.beans.factory.InitializingBean
public void destroy() throws Exception
destroy
in interface org.springframework.beans.factory.DisposableBean
Exception
public VaultSysOperations opsForSys()
opsForSys
in interface VaultOperations
public VaultTokenOperations opsForToken()
opsForToken
in interface VaultOperations
public VaultTransitOperations opsForTransit()
opsForTransit
in interface VaultOperations
public VaultTransitOperations opsForTransit(String path)
VaultOperations
VaultTransitOperations
if the transit backend is mounted on a
different path than transit
.opsForTransit
in interface VaultOperations
path
- the mount pathpublic VaultPkiOperations opsForPki()
opsForPki
in interface VaultOperations
public VaultPkiOperations opsForPki(String path)
VaultOperations
VaultPkiOperations
if the PKI backend is mounted on a different path
than pki
.opsForPki
in interface VaultOperations
path
- the mount pathpublic VaultResponse read(String path)
VaultOperations
read
in interface VaultOperations
path
- must not be null.public <T> VaultResponseSupport<T> read(String path, Class<T> responseType)
VaultOperations
read
in interface VaultOperations
path
- must not be null.responseType
- must not be null.public List<String> list(String path)
VaultOperations
list
in interface VaultOperations
path
- must not be null.public VaultResponse write(String path, Object body)
VaultOperations
write
in interface VaultOperations
path
- must not be null.body
- the body, may be null if absent.public void delete(String path)
VaultOperations
delete
in interface VaultOperations
path
- must not be null.public <T> T doWithVault(RestOperationsCallback<T> clientCallback)
VaultOperations
RestOperationsCallback
. Allows to interact with Vault
using RestOperations
without requiring a
session.doWithVault
in interface VaultOperations
clientCallback
- the request.RestOperationsCallback
return value.public <T> T doWithSession(RestOperationsCallback<T> sessionCallback)
VaultOperations
RestOperationsCallback
. Allows to interact with Vault in
an authenticated session.doWithSession
in interface VaultOperations
sessionCallback
- the request.RestOperationsCallback
return value.Copyright © 2016–2017 Pivotal Software, Inc.. All rights reserved.