ASP.NET登录控制 - 使用Authenticate事件保护SQLi不受阻碍?

时间:2016-04-05 13:16:59

标签: asp.net sql-injection

我对ASP.NET登录控件有一个简单的问题。

我知道它可以防止SQL注入,但是当我使用“Authenticate”Sub(用于自定义身份验证方法)时,我想知道它是否也能保护?

我可以继续在SQL语句中使用'username'和'password'而不将它们编码为参数吗?欢呼声。

1 个答案:

答案 0 :(得分:1)

  

SELECT * FROM aspnet_Membership AS INNER JOIN aspnet_Users AS B ON   A.UserId = B.UserId WHERE B.UserName ='" &安培; Login1.UserName& "'和   A.Password ='" &安培; Login1.Password& "&#39 ;;"

以上SQL语句不安全。它容易受到SQL注入攻击。您想使用参数化查询。

例如,

SELECT * 
FROM aspnet_Membership AS A INNER JOIN aspnet_Users AS B 
     ON A.UserId = B.UserId 
WHERE B.UserName = @UserName AND A.Password = @Password