У меня есть приложение python, предназначенное для работы в качестве службы в Linux, и меня попросили установить его на коробке Windows XP в офисе, где нет машин Linux (для меня это делает его странным и запутанным потому что у меня практически нет опыта разработки для Windows).Как безопасно хранить учетные данные базы данных для приложения Windows?
В Linux приложение имеет свой собственный пользователь, а файл учетных данных приложения и базы данных находится в зашифрованной папке, доступной только этому пользователю. (Я хотел бы заявить, что я не криптолог, и что, если в этой настройке уже есть серьезные ошибки безопасности, я очень рад, что они мне указали!)
Как я могу достичь эквивалентный уровень безопасности с помощью аналогичных или разных средств на компьютере под управлением Windows XP? То есть, как я могу запретить тем, кто имеет доступ к компьютеру или диску, изменяющему программу, или чтению учетных данных?
Немного фона: окно окна хоста - это рабочая станция, используемая каждый день пользователями с неадминистративными привилегиями. Защищенные активы - это персональные данные, которые так же чувствительны, как, например, школьный отчет. Приложение предназначено для использования примерно 10 людьми, которые аутентифицируют приложение с отдельными паролями (хранятся в соле и хешируются в базе данных).
Существует очень похожий вопрос, который получил ответ:
on Windows you would store the credentials in the registry in a location protected by an ACL
Однако он не соприкасался с аспектом защиты программных файлов, и в дальнейшем он, кажется, предположить, более высокий уровень работы с Windows, чем мне нравится в настоящее время :) Я понятия не имею, как защитить разделы реестра с помощью ACL, а также как я мог бы получить доступ к защищенным ключам из моей программы. Было бы очень полезно получить простые инструкции для разработчика в незнакомой среде!
Я считаю, что этот вопрос будет более уместным для http://SuperUser.com, поскольку то, что вам нужно сделать, не связано с кодированием. –
Я представил себе возможности решений, которые потребуют нового кода для доступа к защищенным данным, хранящимся в другом формате, например. защищенный раздел реестра. Я рад, что вопрос будет перенесен, если другие согласятся с тем, что это будет более уместно в других местах. –
На самом деле, я считаю, что самый простой способ - просто сохранить данные в файле под домашним каталогом для пользователя (для этого приложение будет нуждаться в собственном пользователе в Windows, чтобы это получилось хорошо). Btw Извините, но у меня недостаточно голосов, чтобы проголосовать, чтобы перенести его на http://SuperUser.com –