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.6-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d894f9c68a7483c55bb0422efcf80d8103498cd42825245514bafc95c57bf5b9 |
|
MD5 | a7e120a6a43bba834a64fe4a1341146b |
|
BLAKE2b-256 | 0fc8b9c7cc59330cf07d160732dff3a71086e58e64a890762c7621ce9adcce81 |