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.25.5-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 089404cc819c4cc043ef0bf04a72dfe174627709a59395131f0b72a63c2ead0e |
|
MD5 | b97eba5889dfa152f465a8a02a39baa6 |
|
BLAKE2b-256 | 90f42e70b9c060213464a9669ce96c7c2eafbf1e1b33b19a2a74086cd452ddbe |