应用程序池标识更改

时间:2013-04-16 15:52:43

标签: c# asp.net web-services iis-7

我在SERVER A上设置了一个Web方法,需要连接到SERVER B上的文件系统。

目前,我有一系列已在SERVER A上运行的Web服务,其中应用程序池上的标识设置为NETWORK SERVICE。问题是我似乎无法通过B上的文件系统访问NETWORK SERVICE.更改应用程序池上的用户实际上不是一个选项,因为有太多可能的火车残骸可能在传出的网络上实现服务电话。

因此,我试图提出的解决方案是在调用Web方法时暂时将Web方法身份用户从NETWORK SERVICE更改为DOMAIN / SOMEUSER。

我需要更改的属性是System.Web.HttpContext.Current.User.Identity.Name

谁能告诉我怎么做呢?许多在线解决方案似乎都是指Windows Azure - 我没有使用它,所以概述的方法不起作用。

谢谢!

2 个答案:

答案 0 :(得分:0)

您可能必须使用web.config中的标记。我们通常设置为<identity impersonate="false" />,应用程序池使用域用户进行权限。

答案 1 :(得分:0)

尝试在您的服务中使用模拟。

<system.web> ....
<identity impersonate="true" userName="accountname" password="password" />