Хранение пароля в Python

Всем привет. Такой вопрос, работаю с Apache Airflow, поднят в контейнерах. Так как стенд тестовый, то часто контейнеры приходится перестраивать (много косячим, приходится все откатывать). Вследствие этого слетают все настроенные соединения, постоянно добавлять их в веб-интерфейсе надоело, появилась задумка сделать баш или питон оператор, который будет добавлять эти соединения. Загвоздка в том, что для подсоединения к БД нужны логин и пароль, а хранить их в скрипте в открытом виде как то не секурно, а в интернете только безопасное хранение полученное от пользователя. Но у меня задача не чтобы при запуске скрипта самому вводить доступы (с таким раскладом я так же могу в веб интерфейсе все это вводить). А как то чтобы настройки соединения сами добавлялись, при этом логин/пароль не хранились в открытом виде в коде


Ответы (1 шт):

Автор решения: Welldone

Ну как самый просто вариант, создать отдельный файл в той же директории а-ля config.py следующего содержания:

LOGIN = 'very_bad_login'
PASSWORD = 'very_secret_password'

После этого в искомом коде программы вначале добавить и затем использовать через переменные:

from config import LOGIN
from config import PASSWORD

login = LOGIN
passwd = PASSWORD

В качестве дополнения можно добавить защиту от shoulder surfing в виде импорта base64. Это всё, конечно, не совсем безопасно, но решает проблему прямого написания логина\пароля в конфиге.

→ Ссылка