避免页面未经授权的访问通过改变MVC3

问题描述:

我在新的MVC和我有一个问题的URL查询参数:如果我有索引页面(一些对象,这是网址http://localhost:6384/admin/列表)和我的ActionLink按钮,当用户点击时,他获得该对象的详细信息,这是url http://localhost:6384/Admin/Apartman/details/1。 obejct的避免页面未经授权的访问通过改变MVC3

ID为1,但如果用户改变值1到一些其他的价值,他会得到一些其他的对象,也许他不应该能够看到它。

我能做些什么来保护应用程序?

+1

您如何确定允许特定用户查看哪些数据? – 2012-04-08 13:19:51

+0

你的意思是第二个url只能从索引页面调用吗? – 2012-04-08 13:59:28

我这样做简直是检查用户是否有权访问对象的方式。

public ActionResult EditProfile(int id) 
{  
    ApartmentViewModel objVM=MyService.GetApartment(id); 
    if(objVM.CreatedById==id) 
    { 
    return View(objVM); 
    } 
    else 
    { 
    return View("UnAuthorized"); 
    } 
} 
+1

有没有其他解决方案antiforgerytoken?可以添加到actionlink?就像我说我真的是新的:) – VirtuoZ 2012-04-08 13:04:37

+0

@ user1278119:我真的不知道。这是我做到这一点的方式。 – Shyju 2012-04-08 13:06:08