我正在开发一个连接到SQL Server 2005数据库的.NET(2.0)WinForms实用程序。我找到了参考资料,如Avoiding Plaintext Passwords用于处理连接字符串数据的实际加密。我现在需要在安装过程中实施加密,以便管理员可以将该实用程序安装在用户的桌面上,但不能向用户提供数据库连接信息。配置数据可以从安装过程加密吗?
示例代码似乎都适用于在主应用程序内执行加密。所以应用程序需要执行一次加密操作。如果应用程序已安装但未执行,则配置文件中的配置信息将以纯文本格式显示。
任何人都可以提供信息显示如何从设置应用程序执行加密。其他解决此问题的方法也是受欢迎的(但是,由于业务需求,我无法为数据库连接要求Windows身份验证 - 我仅限于SQL Server身份验证)。
编辑: 我的描述可能过于简单。我们已经进行了风险评估,并确定使用内置的.NET框架功能来加密连接信息可为应用程序提供足够的安全性。
我们知道,一个真正确定的个人最终可能会获得连接信息,我们很乐意接受这种风险。加密连接数据的目的是简单地提高工作量并帮助“保持诚实的人诚实”。
已经研究出了执行加密的方法,现在我正试图找出一种在安装过程中执行加密的方法。任何帮助沿着这些线woul被赞赏。谢谢!
这是我可能会去的路线。我可以在主应用程序中添加Encryption代码,然后让安装程序使用指示加密应该发生的命令行参数启动应用程序。谢谢。 – JeremyDWill 2008-12-11 03:29:47