Keycache is an AES encrypted keyvalue store for sensitive credentials.
Project description
Keycache
Keycache is an AES encrypted key:value store for your sensitive credentials. It can be used for database passwords, API-keys, private certificates or anything you don't want floating around on your filesystem. The module works as both static singleton and class instance for multiple simultaneous stores.
pip install git+git://github.com/psytron/keycache.git#egg=keycache
Basic Usage: This example uses automatic defaults for all parameters. It generates an encryption key derived from a hardware identifier, a default path for blobs ( ./blobs/ ), and default name for current blob ( default )
from keycache import Keycache
k1 = Keycache()
k1.add('some_namespace', { 'key1':'val1' , 'key2':'val2'} )
k1.save()
Specific Usage:
k2 = Keycache(
alias='api_workers', # Blob name
private_key='key_from_secure_message_bus', # Encryption key
blob_path ='blobs/dir' ) # Where to store encrypted blobs
k2.add('some_namespace' , { 'key1':'val1' , 'key2':'val2'} )
k2.save()
Loading from file: If you want to distribute the credentials to other machines while keeping a central configuration file on your local host you can use this method. Just ensure you keep your credentials file out of your repository and deploy directory.
k3 = Keycache()
k3.load_config('path/to/config.yml')
k3.save()
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
Built Distribution
Hashes for keycache-0.27.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 029b8fdb2b7157a92a94340baa23e3a563e25a90f0cd702f3c932d8b84eca8ed |
|
MD5 | 867c09838021fe53b98dff2519b0b530 |
|
BLAKE2b-256 | 5e2ddd18e277369796c5a6518e240d810f94c4b919768e135f810cb71d0283db |