Skip to main content

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:

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.4.tar.gz (5.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

berglas_python-0.3.4-py3-none-any.whl (9.3 kB view details)

Uploaded Python 3

File details

Details for the file berglas_python-0.3.4.tar.gz.

File metadata

  • Download URL: berglas_python-0.3.4.tar.gz
  • Upload date:
  • Size: 5.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.0.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.6.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.6.9

File hashes

Hashes for berglas_python-0.3.4.tar.gz
Algorithm Hash digest
SHA256 8b615445cf2658a635bff84f1c80c1eaf7b8b1d30f9c16077617ee65be9a31db
MD5 4df87f4b90db9da6f994571a80ae0c46
BLAKE2b-256 176f23d3f68cb397697a3fa1d3590013c68ff26376ec76d5b38dbde7477ef0e8

See more details on using hashes here.

File details

Details for the file berglas_python-0.3.4-py3-none-any.whl.

File metadata

  • Download URL: berglas_python-0.3.4-py3-none-any.whl
  • Upload date:
  • Size: 9.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.0.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.6.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.6.9

File hashes

Hashes for berglas_python-0.3.4-py3-none-any.whl
Algorithm Hash digest
SHA256 1fa6b5f1ae8b620bc763bd1b2932b66ff76af6230ffea7ab12d40f570a717353
MD5 40a23193b68c9e7d6986eb1625860d71
BLAKE2b-256 1f8e6545f99df328c1794ba0a7dc5c202a929d07bf6861332da6825ced940607

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page