只是一个一般的架构问题.
我知道对于网站,可以使用IIS内置的功能来加密连接字符串部分.但是,我不确定的是...如果我这样做然后将web.config复制到另一个项目,新项目是否仍然能够解密配置文件中的连接字符串部分?
这成为问题的是生产数据库访问.我们不希望任何人能够将配置文件从生产复制到他们的项目中,并且可以对生产数据库进行全权访问.
目前我公司的方式是将加密的连接字符串存储在服务器的注册表中,然后使用本地工具读取注册表并动态解密该值.这可以防止有人只是查看注册表或Web配置来查看连接字符串.
此外,对于胖客户端(WinForms,WPF等)应用程序,这可能会有点问题,因为再次,我不确定IIS加密技巧是否会起作用,因为应用程序不会在IIS上运行.我们目前有一个kludgy解决方案,它涉及相同的本土应用程序,但从二进制文件读取加密的字符串,并在运行中解密.
它似乎非常拼凑,我们正在寻找一种更好的方法(即行业标准,当前技术等)
所以,更普遍的问题是......
您使用什么方法来保护连接字符串?特别是涉及到访问它的多种应用程序类型,加密等.