【发布时间】:2009-01-23 14:59:22
【问题描述】:
我正在建立一个公共站点,我首先想到的是 SQL 注入。我有一些要保存的文本字段,并且正在使用 linq 更新/写入数据库。我使用 linq 安全吗?
此示例正在创建用户帐户。
Data.MemberRegistrationDataContext context = new MemberRegistrationDataContext();
Data.tbl_Member_UserProfile profile = new tbl_Member_UserProfile();
profile.SSN = Convert.ToDecimal(Session["tempMemberSSN_Registration"]);
profile.UserName = userName;
profile.Password = password;
profile.EmailAddress = email;
profile.QuestionID = qID;
profile.QuestionResponse = securityAnswer;
profile.LastModDt = DateTime.Now;
profile.LastModBy = "web";
context.tbl_Member_UserProfiles.InsertOnSubmit(profile);
context.SubmitChanges();
这个例子是修改密码
MemberRegistrationDataContext dc = new MemberRegistrationDataContext();
var mProfileRecord = dc.tbl_Member_UserProfiles.Single(c => c.SSN == sSSN);
mProfileRecord.Password = sNewPassword;
dc.SubmitChanges();
这些安全吗? LINQ 会参数化它自动生成的 SQL 吗?
【问题讨论】:
-
读者注意:实体框架也是如此。见stackoverflow.com/questions/3473841/…
标签: c# asp.net linq linq-to-sql