Skip to content

Ruby gem for encrypting secrets with GnuPG and/or KMS and storing them in DynamoDB

License

Notifications You must be signed in to change notification settings

rbayerl/dynamo_secret

Repository files navigation

dynamo_secret

Ruby gem for encrypting secrets with GnuPG and/or KMS and storing them in DynamoDB.

Usage

dynamo_secret can be used to store, fetch, update, and delete encrypted information. It is intended to be used as a remote password store, but could be used for other things as well. Data is organized by site, and can contain almost anything. Usage:

dynamo_secret -l|--list
dynamo_secret -i|--init   [-k|--kms]
dynamo_secret -g|--get    [site] [key1,key2,...]
dynamo_secret -a|--add    [site] [key1,key2,...] [val1,val2,...]
dynamo_secret -u|--update [site] [key1,key2,...] [val1,val2,...]
dynamo_secret -d|--delete [site]

List

dynamo_secret -l will list all of the sites stored in the DynamoDB table.

Init

Before storing secrets the table needs to be created. dynamo_secret -i [-k] will create the table. If the optional -k flag is supplied a KMS key will also be created. KMS keys do not qualify for free tier usage and will cost $1 or more per month.

Get

dynamo_secret -g|--get [site] [key1,key2,...] will retreive and decrypt information stored under the specified site. Specific fields (keys) can also be specified if not all fields are wanted or required.

Add

dynamo_secret -a|--add [site] [key1,key2,...] [val1,val2,...] stores key value pairs under site. Values may be omitted to keep them out of history files, or - may be used for extra sensitive secrets.

Update

dynamo_secret -u|--update works exactly like --put, but it replaces the specified key value pairs while keeping anything else.

Delete

dynamo_secret -d|--delete [site] completely removes all records under site from the DynamoDB table.

About

Ruby gem for encrypting secrets with GnuPG and/or KMS and storing them in DynamoDB

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages