Decipher the Berglas keys
Project description
Overview
Python library help to use Berglas, to encrypt and to decrypt the secrets stored in a GCP storage.
See Berglas for details about bucket bootstrapping and secret creation
Library Usage
You have to get the library
pip install berglas-python
Then use it in the same way as Go library
The library berglas_python library is able to:
- Encrypt and upload the secrets
- Download and decrypt any secrets that match the Berglas environment variable reference syntax
- Replace the value for the environment variable with the decrypted secret
Here an example of usage
import os
import berglas_python as berglas
project_id = os.environ.get("MY-PROJECT")
# This higher-level API parses the secret reference at the specified
# environment variable, downloads and decrypts the secret, and replaces the
# contents of the given environment variable with the secret result.
berglas.Replace(project_id, "MY-SECRET")
# This lower-level API parses the secret reference, downloads and decrypts
# the secret, and returns the result. This is useful if you need to mutate
# the result.
my_secret = os.environ.get("MY-SECRET")
plaintext = berglas.Resolve(project_id, my_secret)
os.environ.unsetenv("MY-SECRET")
os.environ.setdefault("MY-SECRET", plaintext)
# This is lower-level API encrypts the plaintext string and uploads the blob
berglas.Encrypt(project_id, 'MY-BUCKET/MY-SECRET-FILE', 'STRING-TO-ENCRYPT')
License
This library is licensed under Apache 2.0. Full license text is available in LICENSE.
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
berglas_python-0.3.3.tar.gz
(5.0 kB
view hashes)
Built Distribution
Close
Hashes for berglas_python-0.3.3-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ec509de7a90b252227a91d88c9cb42e6675b0a7351422befc597ab2943347d04 |
|
MD5 | acc9733900e21f2a11090ced2435c90e |
|
BLAKE2b-256 | f9eb64d0100c0ab369e79854b66e45f2b49daabfcda18f1323c90c31484ba7b3 |