使用参数化查询。
示例代码:
不安全的代码:
string query = "SELECT * FROM users WHERE username = '" + username + "' AND password = '" + password + "'";
安全的代码:
string query = "SELECT * FROM users WHERE username = @username AND password = @password";
using (SqlCommand command = new SqlCommand(query, connection))
{
command.Parameters.AddWithValue("@username", username);
command.Parameters.AddWithValue("@password", password);
// 执行查询
}
使用参数化查询可以避免 SQL 注入攻击,因为查询参数被视为字符串,而不是 SQL 代码的一部分。
上一篇:避免SQL注入的SQL查询格式化