项目类型是MVC2。假设我有page1。成功后,它会在行中编写一些思考并获取新的插入行ID并重定向到另一个页面并将行id作为参数发送。用户可以在querystring上看到此参数。并且可以改变它。我认为这是在某些情况下(页面)的问题。我使用隐藏的输入和后检查查询字符串中的参数与隐藏的输入值。如果它们不相等,则写入log并重定向到错误页面。我的方式是否正确。或者有一个好方法。
感谢...
答案 0 :(得分:3)
公开这样的ID非常标准,可以让浏览器对特定项目进行书签。您的工作是确保用户只能查看和修改他们应该能够访问的记录。
如果用户进行了一些网址黑客攻击并输入了一个他们不允许查看或修改的项目的URL,您可以将其踢回父页面,或者提供Access Denied
消息,具体取决于在app / context。
底线永远不会信任用户输入,包括隐藏的表单参数。