如何隔离MVC3中存储在SQL DB中的用户数据

时间:2011-07-04 21:18:10

标签: asp.net-mvc-2 asp.net-mvc-3

我有问题找到隔离用户数据的最佳方法。

现在,如果我登录并访问我的个人资料,我可以看到从db。

加载的数据

示例.../myprofile/PeterM

但如果我手动将地址更改为.../myprofile/MartaM,我会看到数据存储在db for user marta中 我如何隔离会员数据。

感谢我的愚蠢问题。

1 个答案:

答案 0 :(得分:1)

您应该始终检查是否允许访问数据的用户这样做。不要只依赖查询字符串。

因此,例如,不是根据查询字符串中的用户名执行数据库查找,而是根据当前经过身份验证的用户获取信息。

如果我以Brandon身份登录,则GetUser(HttpContext.Current.User.Identity.Name);应始终返回我的信息,无论其名称是否传递给控制器​​操作。

或者只是检查您要检索的用户名是否与HttpContext.Current.User.Identity.Name

相同