ASP.NET模拟 - 如何确定当前用户是否冒充某人?

时间:2009-12-11 18:50:46

标签: asp.net impersonation

我正在使用

FormsAuthentication.SetAuthCookie("username", true );

这样一个帮助台人员可以冒充他人的人进去查看帐户的样子。我想知道是否有一种方法我的代码可以确定此会话是通过模拟运行的(这样我就可以阻止几页并且闪烁一个标语“你冒充这个用户:用户名”

1 个答案:

答案 0 :(得分:2)

这里最好的办法是确保帮助台用户在进入允许他们冒充其他用户的页面之前必须自己登录。

此时,要么保存会话变量,要么向浏览器发送第二个cookie,以确定他们的真实身份以及您需要跟上的任何其他信息。我更喜欢将它存储在会话变量中,因为它更安全,您可以控制服务器上的信息。

其余代码的工作方式大部分就像它现在响应一样,好像用户确实是他们冒充的那个,但是任何需要测试模拟的代码都可以读取会话或alt cookie以了解它们是否模仿或不