我即将开发一个ASP.NET MVC 3站点,其中将有两种不同类型的用户:全局管理员和本地管理员。
本地管理员可以管理自己的数据。全局管理员可以选择本地管理员并对该用户进行“模拟”排序。通过这个,我的意思是他最好能够看到相同的观点等。
您对如何实施此行为有何看法?
最诚挚的问候 肯尼斯
答案 0 :(得分:0)
如果您使用的是forms authentication,则可以冒充任何用户:
[Authorize(Roles = "admin")]
public ActionResult BecomeGlobalAdmin()
{
FormsAuthentication.SetAuthCookie("globaladmin", false);
return RedirectToAction("index");
}
您可能还希望在会话中存储一些信息,这些信息表明用户实际上是管理员,但充当全局管理员(如果您需要此类功能)。