代码:asp.net模拟用户
System.Security.Principal.WindowsImpersonationContext impersonationContext;
impersonationContext =
((System.Security.Principal.WindowsIdentity)User.Identity).Impersonate();
//access network resources.
impersonationContext.Undo();
的web.config:
<authentication mode="Windows">
</authentication>
<identity impersonate="true"
userName="user"
password="password"></identity>
从web.config文件作为清楚,该应用在模拟的模式下运行。我需要临时模仿,以访问网络资源。我如上所示那样做。
如果我浏览到服务器上安装的本地IE上的网站,但是当我从我的PC或任何其他PC访问该应用程序时,我的访问被拒绝。
顺便说一句,这是所有企业域环境。所以IE在这两种情况下都会传递一个有效的身份验证令牌。
任何想法正在发生。谢谢。
我才意识到我错过了你的第二个到最后一句。如果您已经排除了代表团问题,请忽略我的答案。 – HAL9000 2010-04-16 00:20:16
感谢Ben的回复。我很确定这与AD有关,因为它只适用于本地请求。关于Kerberos Double Hop的链接非常有见地。尽管如此,我几乎放弃了,走了一条完全不同的路线。 – coderguy123 2010-04-16 13:27:30
嘿没问题。我们的系统管理员花了很长时间才将代理团队配置在我们的服务器上,而且等待很痛苦。如果你可以通过一切手段来设计它。 祝你好运! – HAL9000 2010-04-16 20:13:05