У меня есть программа (не написанная мной), которую я хотел бы использовать. Он аутентифицируется в онлайн-сервисе, используя имя пользователя и пароль, которые я хотел бы сохранить в тайне. Информация аутентификации может быть передана в программу двумя способами: либо непосредственно в качестве аргументов командной строки, либо через открытый текстовый файл конфигурации, ни один из которых не выглядит особенно безопасным.
Я хотел бы написать сценарий Python для управления запуском этой программы и держать свои учетные данные подальше от посторонних глаз других пользователей машины. Я работаю в среде Linux. Моя проблема с подходом командной строки заключается в том, что командная строка, используемая для запуска программы, видна другим пользователям через файловую систему /proc
. Аналогичным образом, файл конфигурации открытого текста может быть уязвим для чтения кем-то с соответствующими разрешениями, например, системным администратором.
У кого-нибудь есть какие-нибудь предложения относительно хорошего способа сделать это? Если бы у меня был какой-то способ скрыть аргументы, используемые в командной строке от остальной системы, или способ создать файл конфигурации, который можно было бы прочитать только один раз (концептуально, если бы я мог передать данные конфигурации из сценария в программа), я бы избежал ситуации, когда мои учетные данные могут быть прочитаны кем-то другим в системе.