这不是常见的问题“存储纯文本用户的密码是否安全?”。不,这不安全,我们都知道。
我正在编写一个小应用程序,它应该针对外部系统进行身份验证以执行某些操作,唯一可用的身份验证方法是通过用户名和密码。它是为人类设计的,无法更改。
有多个用户可以访问我的应用程序,并且每个用户都单独进行身份验证,但是他们都针对外部系统“共享”相同的身份验证数据,理想情况下,这些数据由应用程序透明地管理。
“愚蠢”的解决方案是以纯文本形式存储用户名/密码并将其用于身份验证,但显然这并不安全。密码可以加密,但如果有人闯入系统怎么办?
可能的解决方案:使用 DPAPI 透明地加密/解密密码(甚至可能是用户名)。这是一个好主意吗?这安全吗?多台机器的设置如何(机器之间的加密兼容)?
你有什么额外的建议吗?