AWS Secrets Manager Python Interface
pip3 install boto3 jinja2
python3 secrets_manager.py
usage: secrets_manager.py [-h] [--verbosity {INFO,ERROR,DEBUG}]
{get,set,list,delete,find}
secrets_manager.py get
secret_name The secret to get or set
--create Create secret if necessary
--silent Disable secret display
--template [TEMPLATE_FILES [TEMPLATE_FILES ...]]
template_path output_file
--tags KEY1=VAL1,KEY2=VAL2...
Add tags to the secret
--secret_length SECRET_LENGTH
Secret string length
--exclude_punctuation
Exclude punctuation from secret
secrets_manager.py set
get with --create by default
secrets_manager.py delete
secret_name The secret to delete
--delay [7-30] Recovery window, between 7 and 30 days
--force Disable recovery window
secrets_manager.py list
secrets_manager.py find
--secret_name SECRET_NAME
The secret to return
--tags KEY1=VAL1,KEY2=VAL2...
Find secrets using these tags
python3 secrets_manager.py get secret0 --template templates/secretsManager.j2 templates/config.ini
python3 secrets_manager.py set secret3 --exclude_punctuation
python3 secrets_manager.py set secret4 --secret_length 16 --tags key1=value1,key3=value2
python3 secrets_manager.py delete secret3 --force
python3 secrets_manager.py delete secret4 --delay 14
python3 secrets_manager.py find --secret_name secret0
python3 secrets_manager.py find --tags key3=value2,key1=value1
docker build -t aws_secrets_manager:0.x .
docker run -ti -v ~/.aws:/root/.aws/ -v ~/templates:/root/templates -e AWS_PROFILE=ADMIN aws_secrets_manager:0.x list
docker run -ti -v ~/.aws:/root/.aws/ -v ~/templates:/root/templates -e AWS_PROFILE=ADMIN aws_secrets_manager:0.x get mysecret1 --create --template /root/templates/secretsManager.j2 /root/templates/config.ini