ASP.NET的SQL注入过滤器方法

时间:2009-11-30 21:30:48

标签: c# asp.net sql-injection

我的字段是自由格式文本,只允许任何数字/符号的组合。验证这些以防止SQL注入的最佳方法是什么?我可以简单地替换刻度线吗?有没有可以插入使用的方法?

2 个答案:

答案 0 :(得分:8)

只需使用参数化查询!在这里查看这篇文章:http://www.functionx.com/aspnet/sqlserver/parameterized.htm

答案 1 :(得分:1)

这里列出了各种方法: How To: Protect From SQL Injection in ASP.NET

报价:

  

对策包括使用可接受字符列表来约束输入,使用参数化SQL进行数据访问,以及使用在数据库中具有受限权限的最低权限帐户。建议使用带参数化SQL的存储过程,因为SQL参数是类型安全的。类型安全的SQL参数也可以与动态SQL一起使用。在无法使用参数化SQL的情况下,请考虑使用字符转义技术。

验证控件可以提供帮助,尽管它们运行在服务器端,而不是客户端。 ASP.NET确实内置了一些保护,但我不会单独依赖它。