.net 如何允许用户在不影响安全性的情况下更改connectionString?

.net 如何允许用户在不影响安全性的情况下更改connectionString?,.net,sql-server,.net,Sql Server,有app.config,但任何人都可以阅读它并轻松登录到数据库(在我的例子中,是SQL Server)。 我需要将连接到同一数据库服务器的多个程序部署到不同的客户端,这样我就无法为每个客户端重新构建程序 我正在SQL Server 2012中使用WPF和WindowsForms。第一个选项是将连接字符串放入代码中并对其进行加密。当需要连接到服务器时,解密连接字符串并在应用程序内部使用。这有助于隐藏基本用户的连接信息,而不是可以反编译二进制文件的高级用户(黑客) 第二个选项也是最可靠的,即防止客户

有app.config,但任何人都可以阅读它并轻松登录到数据库(在我的例子中,是SQL Server)。 我需要将连接到同一数据库服务器的多个程序部署到不同的客户端,这样我就无法为每个客户端重新构建程序


我正在SQL Server 2012中使用WPF和WindowsForms。

第一个选项是将连接字符串放入代码中并对其进行加密。当需要连接到服务器时,解密连接字符串并在应用程序内部使用。这有助于隐藏基本用户的连接信息,而不是可以反编译二进制文件的高级用户(黑客)

第二个选项也是最可靠的,即防止客户端直接访问数据库。相反,在服务器上制作一些API,并让客户端调用它们。这样,连接就完全从你的应用程序中移除,让你更自由地扩展你的系统。但成本更高