kindi

Kind incommunicados package for user secrets


License
GPL-3.0
Install
pip install kindi==0.0.4

Documentation

Kindi: kind incommunicados

A small package to deal with secrets in pipelines, such as API keys for data repositories. Named in reference to Al-Kindi, one of the fathers of cryptography.

Install

This package is intended more as a library for other python packages, that will then have it as a dependency. If you want to use it directly:

pip3 install kindi

Configuration

The default configuration will encrypt your secrets and store it in a database. If you trust your system - because you are the only one with admin rights - you can save the following configuration file ~/.incommunicados.cfg:

[kindi]
security_level=LOW
storage=FILE

With this configuration the secrets will not be encrypted, but they will only be readable by your user. They will also be stored in a flat text file for easy editing. It is a strong recommendation to only use this configuration on a system you trust sufficiently.

Developers

Developers should make calls for secrets in the following way, replacing my_package with the name of their package:

from kindi import Secrets
my_package_secrets = Secrets(default_section='my_package')
my_package_secrets['email']
my_package_secrets['email','different_section'] # key storred in different section