Здравствуйте форумчане и форумчата!
Коротко:
Проблема
в отсутствии знаний вот в чем: не знаю, как автоматически разблокировать брелок keyring при запуске сервиса apache.
Я не понимаю, как происходит авторизация и запуск apache под пользователем.
Теперь чуть подробнее:
В роли Freedesktop SecretService настроен gnome-keyring.
Для использования брелка keyring в python требуется (действия проверены в консоли):
1) чтобы была запущена сессионная шина dbus
($ dbus-run-session -- sh), которая стартует dbus-daemon и проставляет в переменных окружения DBUS_SESSION_BUS_ADDRESS,
2) брелок открывается с паролем:
($ echo "Password" | gnome-keyring-daemon --unlock)
3) профит, теперь работают методы библиотеки python-keyring: get_password(), set_password()
В чем собственно вопрос:
- Как сделать авторазблокировку брелка, чтобы это все работало в коде flask'a?
Как служба apache авторизовалась под пользователем?
Я придумал только поместить эти действия в sh скрипт, выполнить его перед стартом службы apache.
но я не знаю, как сделать и это...(
ОС: Ubuntu 18.04.4 LTS без GUI (то есть без X сервера)
Веб-сервис: Apache/2.4.29 (wsgi модуль, виртуальный хост)
Среда: Python 3.8.1 (flask-приложение)
Виртуализация: virtualenv
P.S.
Я прописывал в /etc/pam.d/login
auth optional pam_gnome_keyring.so
session optional pam_gnome_keyring.so auto_start
и в /etc/pam.d/passwd
password optional pam_gnome_keyring.so
это позволяет стартануть gnome-keyring-daemon, но все еще не разблокирует брелок.
ТС не появлялся на Форуме более трех месяцев по состоянию на 19/03/2021 (последняя явка: 17/08/2020). Модератором раздела принято решение закрыть тему.
--zg_nicoСпустя прошедшее с момента создания темы на форуме время (месяцев:
приходится признать, что она не вызвала отклика у форумчан. Ввиду отсутствия ответов, по состоянию на 19/03/2021 модератором раздела принято решение тему закрыть.
Закрыто
--zg_nico