【问题标题】:How can I fix CA2100 Review SQL queries for security vulnerabilities issue如何修复 CA2100 查看 SQL 查询以发现安全漏洞问题
【发布时间】:2026-01-06 22:10:01
【问题描述】:

我正在分析我的代码并遇到了这个安全问题:

CA2100 检查 SQL 查询是否存在安全漏洞 在“Add_item.loadgrid()”中传递给“SqlDataAdapter.SqlDataAdapter(string, SqlConnection)”的查询字符串可能包含以下变量“Login.dbName”。如果这些变量中的任何一个可能来自用户输入,请考虑使用存储过程或参数化 SQL 查询,而不是使用字符串连接构建查询。登录 Add_item.cs 64

这是突出显示的代码:

SqlDataAdapter da = new SqlDataAdapter("SELECT Newjob FROM [" + Login.dbName + "].newjob", connection. conn );

【问题讨论】:

    标签: c# sql-server visual-studio optimization code-analysis


    【解决方案1】:

    这就是通常所说的 SQL 注入漏洞。您应该使用 sqlParameter 对象,而不是将值连接成一个字符串并将该字符串传递给 SQL Server。

    【讨论】: