在模拟上下文之外调用WCF服务?

时间:2010-07-30 11:26:23

标签: asp.net wcf impersonation

我遇到了WCF中的模拟问题。也就是说,我在ASP.NET中调用了一个命名管道服务,并启用了模拟。这会失败(由于管道上的权限阻止来自网络的任何人)。那么,有什么方法可以在模仿上下文之外进行调用吗?我不需要冒充这个电话,但看不到这样做的任何方式。

有人有任何想法吗?

由于 马特

PS。我需要通过config ...

以声明方式执行此操作

1 个答案:

答案 0 :(得分:0)

我很幸运,我需要禁用模拟的服务是在其他人没有使用的IIS端点上,我可以很高兴地更改web.config中的身份验证/授权参数,以便授予访问权限匿名用户不是解决方法,而是解决方法。

据我所知,如果我想在代码中执行此操作,我会将客户端包装在对WindowsIdentity.Impersonate(IntPtr.Zero)的调用中,这显然与调用Win32 RevertToSelf相同。我不知道在处理此上下文时会发生什么情况(撤消是否会重新模仿最初模拟的用户?或者恢复是否被卡住?)