2013-04-16 110 views
0

我得建立在服务器上的web方法和需要连接到文件系统上的服务器B应用程序池标识变化

目前,我有一个广泛的网络服务阵列已经在服务器上运行应用程序池上的标识设置为NETWORK SERVICE。问题是,我似乎无法让网络服务访问B上的文件系统。更改应用程序池上的用户并不是一个真正的选择,因为有太多可能的火车残骸可能在传出网络上实现服务电话。

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

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

谁能告诉我,我怎么能去这样做?网上的许多解决方案似乎都是指Windows Azure--我没有使用这些解决方案,所以概述的方法不起作用。

谢谢!

回答

0

您可能需要使用web.config中的标签。我们通常设置为<identity impersonate="false" />,并且应用程序池使用域用户的权限。

+0

你是什么意思发挥与网络配置?我正在尝试在方法级别设置用户。我不想让全球变化。 – kickinchicken

+0

如果要更改应用程序池标识,请务必限制您的域用户权限。 – Guish

0

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

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

使用身份模仿作品,但它又是全球性的。有没有限制哪些Web方法使用它的方法? – kickinchicken

+0

您可以模拟代码中的方法,但我不会将其推荐用于Web服务。 [http://support.microsoft.com/kb/306158](http://support.microsoft.com/kb/306158)。 – Guish

+0

或者如果你使用WCF,你也可以选择女巫方法使用模仿。 – Guish

相关问题