用于防止URL操作的任何优秀策略,代码片段等?使用MVC防止Url操纵攻击?
例如,我有这个网址,http://localhost/profile/edit/5
的ID可以很容易地改变任何东西,因此人们可以编辑他们不应该太型材。
这里有一些想法,我想到了,但他们都没有缺点:
更改我的系统使用GUID主键 - 使得它几乎不可能猜出键 - 但人们仍然可以采取GUID从应用程序的一部分,稍后在另一个URL中使用它。
使用TempData存储密钥 - 防止网址在稍后使用\ used 发送。
在显示页面之前在控制器中执行检查 - 意味着您必须在每个地方执行“管理”代码 以检查操作。
最好的事情是什么?其中之一还是其他?
我想补充一点,还有没有像样的方式来做到这一点?也许在EntityFramework? – Worthy7 2016-06-27 01:46:32