2012-04-16 14 views
0

我想從我的Web服務器上載FileStream寫一些其他的服務器,這是給錯誤寫從一個服務器上的文件到另一臺服務器:錯誤使用C#

Logon failure: unknown user name or bad password. 

Stack Trace: 
    at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath) 
    at System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy, Boolean useLongPath) 
    at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, FileOptions options, String msgPath, Boolean bFromProxy) 
    at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access) 

的應用程序池運行在「網絡服務」,我已經爲這個用戶爲「網絡服務=>完全控制」設置其他服務器的文件夾權限。

回答

0

「網絡服務」計算機A上的帳戶是不一樣的上機B.「網絡服務」他們都是依賴於機器的身份,你不能指定一個在另一個。

你可以而不是隻給讀取目標文件夾「每個人都」 /寫 - 那會工作。

如果您處於域環境中,那麼解決此類問題的常用技巧是將域帳戶用作應用程序池標識 - 這樣您可以在機器B上的文件夾上設置ACL,因爲它可以「看」的身份正在使用的應用程序池在計算機A

+0

我也給予充分的控制,以「人人」,但沒有成功呢。 – gaurav 2012-04-16 07:31:23

+0

...然後目標服務器不能識別調用服務器的身份(所以它不會在執行'每個人'檢查之前進行身份驗證*)。使用應用程序池的域帳戶。 – 2012-04-16 07:41:24

+0

哎@Andras你能提供給我一個教程鏈接使用域帳戶的應用程序鏈接? – gaurav 2012-04-16 09:23:34