2011-10-04 35 views
5

Vui lòng tham khảo hướng dẫn tìm kiếm cơ sở dữ liệu sau và tư vấn xem phương pháp tìm kiếm có an toàn hay không, đặc biệt là vì nó đang lấy dữ liệu nhập từ một hộp văn bản.Đây có phải là tìm kiếm dựa trên LINQ an toàn chống lại tấn công SQL injection/XSS không?

http://net.tutsplus.com/tutorials/asp-net/enabling-search-functionality-in-your-site-using-the-new-features-in-aspnet-35/

Protected Sub btnSubmit_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnSubmit.Click 

    Dim db As New BlogDBDataContext() 

    Dim q = From b In db.Blogs _ 
      Where b.BlogContents.Contains(txtSearch.Text.Trim()) Or _ 
        b.BlogTitle.Contains(txtSearch.Text.Trim()) _ 
      Select b 

    lv.DataSource = q 
    lv.DataBind() 
End Sub 

Trả lời

5

Vâng, đó là an toàn. Bạn không có nguy cơ bị tấn công SQL injection bằng cách sử dụng LINQ trừ khi bạn tự tạo SQL, ví dụ nếu bạn sử dụng ExecuteQuery.

Các vấn đề liên quan