Using Hashicorp Vault for Encryption Secret Management
Disclaimer
The information in this document is provided on an as-is basis. You use it at your own risk. We accept no responsibility for errors or omissions, nor do we have any obligation to provide support for implementing or maintaining the configuration described here. Furthermore, we do not warrant that the design presented here is appropriate for your requirements.
Introduction
Access Anywhere can use one of two methods to store the secret used for at-rest Encryption of files.
- Access Anywhere Maintained Secrets in the Metadata Database
- Externally maintained Secrets in Hashicorp Vault
This guide steps you through the configuration of Hashicorp Vault and Access Anywhere for the second option.
Installation of Vault is out of scope of this document and can be viewed here: Hashicorp Vault - Install
Hashicorp Vault Configuration
Once the vault has been installed, you will need to complete the deployment and create the secrets engine for the NAA storage.
Deploying the Vault
Following the instructions here: Hashicorp Vault - Deploy
Initialize your vault
vault operator init
Unseal Key 1: .... Unseal Key 2: .... Unseal Key 3: .... Unseal Key 4: .... Unseal Key 5: .... Initial Root Token: s..... Vault initialized with 5 key shares and a key threshold of 3. Please securely distribute the key shares printed above. When the Vault is re-sealed, restarted, or stopped, you must supply at least 3 of these keys to unseal it before it can start servicing requests. Vault does not store the generated master key. Without at least 3 key to reconstruct the master key, Vault will remain permanently sealed! It is possible to generate new unseal keys, provided you have a quorum of existing unseal keys shares. See "vault operator rekey" for more information.
Unseal Vault
Using the Unseal keys generated above:
vault operator unseal
This command will need to be run multiple times before the vault is unsealed, depending on your vault configuration this may be 3 or more unseal keys.
When unsealed you will see
vault status
Key Value --- ----- Seal Type shamir Initialized true Sealed false
Create Secrets KeyValue Store
vault secrets enable -path=secret/ kv
Access Anywhere Setup
Enable Key Management System
Logged in as the Org. Admin, go to: Organization > Policies > Key Management Systems
Select “Vault” from Encryption Key Management System.
You will enter the Vault URL and the Root Token, and click Test Settings.
If this comes back with an error, check to ensure the URL and Token are correct, and that Access Anywhere can connect to Vault successfully.
When the test is successful, click “Set Key Management System”.
Enable Folder Level Encryption
Organization > Policies > Encryption
Define a secure passphrase and enter that in “Encryption phrase to encrypt Team files:”.
This passphrase will be saved in the external vault that you just setup and configured.
From there you can adjust the settings for which folders are encrypted and click “Update Policies”