2013-04-16 118 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

相關問題