Files
spring-cloud-vault/docs/src/main/asciidoc
Mark Paluch 8c297dc667 Add versioned key-value backend support.
We now provide configuration support for the versioned key-value backend introduced with Vault 0.10.0. This backend uses configuration properties prefixed with spring.cloud.vault.kv and defaults to the secret mount path. It resembles configuration properties from the generic secret backend. Using the versioned key-value backend requires disabling the generic secret backend (spring.cloud.vault.generic.enabled=false).

The versioned key-value backend can be configured programmatically through SecretBackendConfigurer.add(KeyValueSecretBackendMetadata.create(…)) which will add data path segments and unwrap nested data elements from the response.

See gh-209.
2018-04-24 16:49:04 +02:00
..
2016-08-22 13:33:12 +02:00
2017-03-31 12:32:49 +02:00
2017-06-16 21:01:26 +02:00

:docs: http://cloud.spring.io/spring-cloud-vault/spring-cloud-vault.html

include::intro.adoc[]

== Features

=== Spring Cloud Vault Config Client

Specifically for Spring applications:

* Retrieve secrets from Vault and initialize Spring Environment with remote property sources.
* Obtain {docs}#vault.config.backends.generic[secrets] secured with SSL.
* Generate credentials for
{docs}#vault.config.backends.mysql[MySQL],
{docs}#vault.config.backends.postgresql[PostgreSQL],
{docs}#vault.config.backends.cassandra[Apache Cassandra],
{docs}#vault.config.backends.mongodb[MongoDB],
{docs}#vault.config.backends.consul[Consul],
{docs}#vault.config.backends.aws[AWS], and {docs}#vault.config.backends.rabbitmq[RabbitMQ].
* {docs}#vault.config.authentication.token[Token],
{docs}#vault.config.authentication.appid[AppId],
{docs}#vault.config.authentication.approle[AppRole],
{docs}#vault.config.authentication.clientcert[Client Certificate],
{docs}#vault.config.authentication.cubbyhole[Cubbyhole],
{docs}#vault.config.authentication.awsec2[AWS-EC2] authentication,
{docs}#vault.config.authentication.awsiam[AWS-IAM] authentication, and
{docs}#vault.config.authentication.kubernetes[Kubernetes] authentication.

* Bootstrap application context: a parent context for the main application that can be trained to do anything.


== Quick Start

include::quickstart.adoc[]

== Building

=== Build requirements for Vault

Spring Cloud Vault Config requires SSL certificates and a running
Vault instance listening on `localhost:8200`. Certificates and the Vault
setup are scripted, the scripts are located in `src/test/bash`.

The following scripts need to be run prior to building the project for the tests to pass.

[source,bash]
----
$ ./src/test/bash/install_vault.sh
$ ./src/test/bash/create_certificates.sh
$ ./src/test/bash/local_run_vault.sh
----

Leave Vault uninitialized, the tests will initialize and unseal Vault. They will also create a root token `00000000-0000-0000-0000-000000000000`.

Changes to the documentation should be made to the adocs found under `docs/src/main/asciidoc/`

`README.adoc` can be re-generated via the following

[source,bash]
----
$ ./docs/src/main/ruby/generate_readme.sh > README.adoc
----

This script requires ruby and the asciidoctor gem installed (`gem install asciidoctor`)

include::https://raw.githubusercontent.com/spring-cloud/spring-cloud-build/master/docs/src/main/asciidoc/building.adoc[]

== Contributing

include::https://raw.githubusercontent.com/spring-cloud/spring-cloud-build/master/docs/src/main/asciidoc/contributing.adoc[]