Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

FlexDeploy provides out of box integration with HashiCorp Vault to retrieve secrets. FlexDeploy will authenticate using AppRole authentication method against vault.

HashiCorp Vault Setup

  • You must first install and configure HashiCorp Vault if have not already done so.
  • Now you can create specific AppRole for FlexDeploy authentication.
  • AppRole specific to FlexDeploy must have policy assigned that allows FlexDeploy to read specific secrets necessary. Example policy file

    Code Block
    titleExamplay Policy File
    path "kv/*" 
    {
       capabilities = ["read", "update"]
    }
    path "sys/mounts" 
    {
       capabilities = ["read"]
    } 
    path "secret/*"
    {
      capabilities = ["create", "read", "update", "delete", "list"]
    }


  • You will need role id and secret id for this AppRole for configuration in FlexDeploy.

FlexDeploy Setup

You must first create Credential Store in FlexDeploy by clicking Create Store button on Administration - Security - Credentials page. Credential store represents instance of specific type of credential store provider. If you have more than one HashiCorp Vault installations, you will create equal number of Credential Stores in FlexDeploy.

Here are the configurations necessary for this store.

Image Added

Property NameNotesExample
Vault URL

HTTP URL for REST service calls.

If you use https protocol then make sure to configure KeyStore (default java or application server keystore) with proper certificates.

http://myvault.mycompany.com:8200
App Role PathApp role path for authentication. This will default to approle and it should be sufficient.approle
Role IdYou will create approle for FlexDeploy to authenticate against vault, provide role id here.as per your Vault configurations
Secret IdYou will create approle for FlexDeploy to authenticate against vault, provide secret id here.as per your Vault configurations
Engine VersionEngine version for secrets. This will default to 2, you can change if necessary.1 or 2