Как отключить запрос пароля командной строки для набора ключей Python - безголовый Debian Linux - PullRequest
0 голосов
/ 17 декабря 2018

Проблема:

Я хотел бы использовать библиотеку Python keyring в безголовой среде Linux, в частности, в вычислительном экземпляре Debian 9 GCP.У меня есть задание cron, которое очень часто просыпается, чтобы запустить скрипт python (... который использует набор ключей для получения паролей к различным ресурсам).

Проблема в том, что скрипт python будет запрашивать у пользователя keyring пароль перед тем, как продолжить выполнение сценария python.Это не работает, так как скрипт выполняется как фоновый процесс cron.Интересно, что запуск этого же сценария в среде Windows не является проблемой, возможно потому, что процесс (пользователь) уже аутентифицирован.

Исследование:

У меня есть тольконашел один пост StackOverflow ( здесь ) и официальную онлайн-документацию ( здесь - «Использование Keyring в безголовых системах Linux»), в которой есть короткий раздел о том, как запускать keyring в безголовом linuxenvironment.

В посте StackOverflow рассказывается, как это сделать с помощью pgcli, но не с помощью какого-либо инструмента произвольной командной строки (например, моего скрипта на python), поэтому я не нашел его полезным.

Точно так же я не смог успешно воспроизвести шаги (кажется, что пропущены шаги?) В документе, чтобы выполнить.Явно, после выполнения dbus-run-session -- sh, я запускаю gnome-keyring-daemon --unlock, но dbus-run-session просто кажется зависает и не выполняет ничего).

Вопросы:

1) Кто-нибудь может, может дать четкие инструкции о том, как запустить keyring в безголовой среде Debian Linux, учитывая мой вышеописанный сценарий?Явно - без запроса пароля.Буду очень признателен, если это возможно, очень подробные пошаговые инструкции.

2) Если нет, я использую keyring для получения паролей к различным ресурсам (например, postgres, удаленным API-ключам и т. Д.).Я надеялся сохранить их в связке ключей, но если это невозможно, какой будет рекомендуемая альтернатива?Я прочитал несколько сообщений StackOverflow о хранении таких данных в переменных среды, но это не рекомендуется.Я также чувствую, что создание файла конфигурации и затем шифрование кажется тяжелым.


Любая помощь приветствуется.Спасибо, любезно -

1 Ответ

0 голосов
/ 24 декабря 2018

Я только что попробовал инструкции, на которые вы указали, и они сработали.gnome-keyring-daemon --unlock не висит, он читает ваш пароль из stdin, т.е. вам нужно закончить пароль с помощью ввода и нажать Ctrl-D.Таким образом, введенная вами новая строка не становится частью пароля.

Кажется, что при первом запуске вы устанавливаете пароль.При последующих запусках gnome-keyring-daemon не дает обратной связи, если пароль неверный, но, очевидно, ваша программа не сможет подключиться позже.

...