Skip to content

Latest commit

 

History

History
38 lines (28 loc) · 1.88 KB

README.md

File metadata and controls

38 lines (28 loc) · 1.88 KB

Exasol Notebook Connector

Connection configuration management and additional tools for Jupyter notebook applications provided by Exasol company.

PyPI Version License PyPI - Python Version Last Commit

Features

Exasol Notebook Connector (ENC) currently contains a Secret Store that can be used in Jupyter notebook applications to store arbitrary credentials and configuration items, such as user names, passwords, URLs, etc.

By that users of such notebook applications

  • need to enter their credentials and configuration items only once
  • can store them in a secure, encrypted, and persistent file based on SQLite and coleifer/sqlcipher3
  • can use these credentials and configuration items in their notebook applications

Usage

from pathlib import Path
from exasol.nb_connector.secret_store import Secrets

file = "password_db.sqlite"
secrets = Secrets(Path(file), "my secret password")
key = "my key"
secrets.save(key, "my value")
value = secrets.get(key)

Constraints and Special Situations

  • If file does not exist then SecretStore will create it.
  • If password is wrong then SecretStore will throw an exception.
  • If file contains key from a session in the past then method secrets.save() will overwrite the value for this key.
  • If key is not contained in file then SecretStore returns None.
  • Saving multiple keys can be chained: secrets.save("key-1", "A").save("key-2", "B")