我在MVC4网站上设计了一个mvc视图,允许成员更新其用户详细信息。这可以使用MVC,但如果我创建一个部分视图,允许用户更新他们的地址,例如使用AJAX。如何应用一定级别的安全性来确定用户x只能更新userx的帐户。并且不允许用户以用户x身份登录,然后欺骗帖子并更新用户y的帐户?
答案 0 :(得分:0)
无论您的控制器是MVC控制器还是WebApi控制器,在用户进行身份验证并在当前线程中设置Principal后,您所要做的就是检查当前上下文中的用户:
HttpContext.User
正在编辑的数据属于哪一个。 通常用户名填充在
上HttpContext.User.Identity.Name
如果正在编辑的用户的用户名与经过身份验证的用户不同,则只需抛出和InvalidOperationException。