Skip to main content

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


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 details)

Uploaded Source

Built Distribution

s1crets-0.0.12-py2.py3-none-any.whl (11.4 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file s1crets-0.0.12.tar.gz.

File metadata

  • Download URL: s1crets-0.0.12.tar.gz
  • Upload date:
  • Size: 9.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.18

File hashes

Hashes for s1crets-0.0.12.tar.gz
Algorithm Hash digest
SHA256 7c725d98d470c366090255047057d335ff8240bc1fb83d0e8a57c4ac4b1c0a57
MD5 1c15ba34c0004bf11c2f5d1ba91707bb
BLAKE2b-256 67cd3e6fc22d5c1a814496110fa1ecddd45ee995d75d856f8b5b4f4d34bd6783

See more details on using hashes here.

File details

Details for the file s1crets-0.0.12-py2.py3-none-any.whl.

File metadata

  • Download URL: s1crets-0.0.12-py2.py3-none-any.whl
  • Upload date:
  • Size: 11.4 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.18

File hashes

Hashes for s1crets-0.0.12-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 36c72e995384118668885048a749c52b04be08352b946784fee0a3bff3f4be4a
MD5 7bf4d0cd23610bd8dc1b11a5dc1f5f46
BLAKE2b-256 2866cd96d23e2b62467166e44429a2f86670e6d62db0e7f97ac38c2ce5e6ba5d

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page