WPF 中连接字符串的安全文本输入

Secure text inputs for connection string in WPF

我有一个 WPF 应用程序可以与 SQL 服务器建立连接以检索数据。

如果用户不使用集成安全性,则可以在 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 是可能的,或者类似的事情。

连接字符串加密不是我所指或搜索的内容。

谢谢。

因为您没有将该用户输入放入数据库查询(易受 sql 注入影响)或直接返回浏览器(易受跨站点脚本攻击,因为他可以输入实际 javascript 或 html 代码)我不认为存在安全风险。如果用户输入无效凭据,数据库连接应该根本无法工作。