保护querystring变量以在SQL查询参数中使用

时间:2013-05-08 15:13:59

标签: asp.net vb.net security

我正在撰写一个简单的网站,作为vb.net中的讨论板/论坛。

当用户点击论坛时,论坛ID将放入“主题”页面读取的查询字符串变量中,然后使用该论坛ID收集所有主题。同样,当用户点击主题时,帖子页面将收集具有该主题ID的所有帖子。

IE:

F_ID = Request.Querystring("F_Num")
myCommand = New SqlCommand("SELECT * FROM Forum_Topics WHERE Forum_ID = @ID", myConnection)
myCommand.Parameters.AddWithValue("@ID", F_ID)

我的问题是:

虽然我在SQL查询中使用id作为参数,但在使用它之前或之后,为了安全起见,我应该对变量中的ID做什么或将其传递给页面?

是否存在使用查询字符串在页面之间传输数据的最佳做法?

最后,如果这个方法不够安全,我应该采用不同的方法吗?

出于这个问题的目的,只要用户登录(在别处处理),就可以看到任何和所有主题。

谢谢!

0 个答案:

没有答案