Convenience wrapper for AWS Parameter Store/Secrets Manager
Project description
s1crets is a thin Python wrapper to read secrets from cloud resources. Wherever supported, it can be used to read/update non-encrypted values as well.
You can find its documentation at readthedocs.io
Installing
Install and update using pip:
pip install -U s1crets
A Simple Example
# Using AWS Parameter Store
import s1crets.providers.aws
ps = s1crets.providers.aws.ParameterStore()
ps.get('/prod/databases/mysql/bigdb/root')
ps.get_by_path('/prod/databases/mysql')
ps.path_exists('/prod/databases/mysql')
ps.update('/prod/databases/mysql/bigdb/root', 'S3cr3Tp4Ssw0Rd!^')
# AWS Secrets Manager
sm = s1crets.providers.aws.SecretsManager()
sm.get('prod/databases/mysql/bigdb/root')
sm.path_exists('prod/databases/mysql')
sm.update('prod/databases/mysql/bigdb/root', 'S3cr3Tp4Ssw0Rd!^')
$ s1crets get secrets/json_test
{'level1': {'level2': 3}}
$ s1crets get secrets/json_test level1
{'level2': 3}
$ s1crets get secrets/json_test level1 level2
3
Getting secrets from a different (than configured) region:
import s1crets.providers.aws
sm = s1crets.providers.aws.SecretsManager(sts_args={"aws_region": "us-east-1"})
sm.get("secret-from-us-east-1")
This library is developed and used internally at System1
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
s1crets-0.0.12.tar.gz
(9.4 kB
view hashes)
Built Distribution
Close
Hashes for s1crets-0.0.12-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 36c72e995384118668885048a749c52b04be08352b946784fee0a3bff3f4be4a |
|
MD5 | 7bf4d0cd23610bd8dc1b11a5dc1f5f46 |
|
BLAKE2b-256 | 2866cd96d23e2b62467166e44429a2f86670e6d62db0e7f97ac38c2ce5e6ba5d |