【发布时间】:2020-03-17 12:54:38
【问题描述】:
我有一个 WPF 应用程序,它可以与 SQL Server 建立连接以检索数据。
如果用户不使用集成安全性,他可以在 TextBox 中写入服务器名称以及用户名和密码。连接字符串是使用输入构建的:
public string GetConnectionString(string name, string server, bool isWindowsAuth = false, string user = null, string password = null)
{
string connectionMode = "";
if(isWindowsAuth == true)
connectionMode = "Integrated Security=True";
else
connectionMode = string.Format("User Id = {0}; Password = {1}; ", user, password);
return string.Format(ConfigurationManager.ConnectionStrings[name].ConnectionString, server, connectionMode);
}
我是学习安全的新手,我正在寻找一种适当的方法来保护它,因为我没有检查用户输入的服务器名称和凭据,我想知道在安全方面会发生什么,以及如果 XSS 是可能的,或者类似的事情。
连接字符串加密不是我所指或搜索的内容。
谢谢。
【问题讨论】:
-
securestring 效果很好
标签: c# wpf security connection-string