Haven is an open-source, centralized secrets manager. It protects your application secrets through a combination of encryption, access control, and injection-at-runtime. It’s easy to set up, and offers an intuitive GUI to set fine-grained access controls and to view logs. Haven allows small teams to securely manage all of their projects’ secrets---and to do so with a minimum of hassle so that they can get back to developing their applications without sacrificing security.
This package allows you to use a GUI to interact with your Haven instance. If you would prefer a CLI, use the Haven CLI package instead. Both of these use the Haven package under the hood to interact with the AWS architecture that makes up Haven.
To use, you must first have an AWS account set up, your default credentials setup in ~/.aws/credentials and your region setup in ~/.aws/config.
Example ~/.aws/credentials:
[default]
aws_access_key_id=AKIAIOSFODNN7EXAMPLE
aws_secret_access_key=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
Example ~/.aws/config:
[default]
region=us-west-2
output=json
After that, simply:
- Clone this repository
- Inside the root directory, run
npm run haven-setup ${region}specifying what supported region you want your Haven instance to be setup. - When setup completes, run
npm installwithin the root directory and theclientdirectory. - In root directory, run
npm startto start up the GUI. - To teardown, simply run
npm run haven-teardown.
As a developer, you don't need an AWS account setup since all users of a Haven instance use the account used during the setup by Admin. Instead:
- Clone this repository
- Place the
havenAccountInfo.jsonfile into a~/.havendirectory. - Inside the root directory, run
npm run haven-userSetupwithin an hour after the Admin created your account - When setup completes, run
npm installwithin the root directory and theclientdirectory. - In root directory, run
npm startto start up the GUI.
