В настоящее время я храню свои имена пользователей & паролей в базе данных SQL Server CE.Безопасное хранение паролей в Windows
Я хотел бы использовать некоторый Windows API, чтобы безопасно хранить мои пользовательские пароли, чтобы другие приложения, работающие на машине, не могли их прочитать.
Я поддерживаю Windows 7, и поэтому я не могу использовать Password Vault
Я пытался использовать CredWrite и CredRead API, основанный на приведенном примере here.
Однако, хотя мне удалось сохранить и восстановить мои пароли, мне также удалось восстановить их, используя совершенно другое приложение. Это означает, что единственная защита, которую я имею, - это ключ, который я использую.
Есть ли другие жизнеспособные решения?
Кажется, что-нибудь, что используется Windows Security Account Manager не будет.
Почему вы храните пароли? Разве это не плохая практика? –
В зависимости от вашего сценария одним из подходов было бы зашифровать пароли самостоятельно (используя API криптографии или CNG) с парольной фразой, которую пользователь должен ввести, когда ваше приложение запускается. –
@DavidHeffernan UI automation также является еще одной веской причиной. –