【问题标题】:Secure text inputs for connection string in WPFWPF 中连接字符串的安全文本输入
【发布时间】: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


【解决方案1】:

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

【讨论】:

    猜你喜欢
    • 2015-08-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多