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 install
within the root directory and theclient
directory. - In root directory, run
npm start
to 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.json
file into a~/.haven
directory. - Inside the root directory, run
npm run haven-userSetup
within an hour after the Admin created your account - When setup completes, run
npm install
within the root directory and theclient
directory. - In root directory, run
npm start
to start up the GUI.