从旧版桌面应用程序中删除密码的最佳方法

Best approach to removing password from legacy desktop apps

我有 10 多个遗留 VB6/VB.NET 应用程序。他们建立与数据库的连接(ODBC/Thick 客户端)。连接字符串都是源代码中的纯文本字符串。我当前的任务是删除所有出现的数据库密码;我正在尝试确定最佳方法。

到目前为止我已经 gathered/decided:

使用 Web 服务调用 return 数据库密码,确保 您的安全性是完美的?

编辑:从遗留数据库应用程序中删除密码时,您有一些真正的选择:

只要从桌面应用程序建立连接需要密码,它就不安全。即使您以加密格式存储它或在运行时检索它,坚定的黑客也可以找到从内存中检索密码的方法。

执行此操作的正确方法是将与数据库相关的操作移动到安全服务器上的 Web 服务 运行。然后,Web 服务将作为受信任的应用程序访问数据库,例如运行 作为具有 trusted connection 的服务帐户。

如果工作量太大,and/or您不必太担心“坚定的黑客”,只是想阻止好奇的员工,在配置文件中 encrypt the password 可能就足够了.