我在Windows 2003 Server上有一個ASP.NET網站,需要從網絡共享中訪問文件。網絡共享受密碼保護,需要提供用戶名和密碼。ASP.NET從密碼保護網絡中讀取文件共享
我在網站上使用基於表單的身份驗證,而不是基於Windows。
所以我的問題是,當我嘗試使用下面的代碼從networkshare中讀取任何文件時,它會拋出訪問被拒絕的錯誤信息 DirectoryInfo networkShare = new DirectoryInfo(「\\ TestServer \ Share」);
所以我嘗試使用模擬器提供網絡共享的用戶名和密碼到impersonate函數調用,但是調用顯然失敗,因爲該用戶名不存在於ASP.NET Web服務器上。因此,我傳遞了Web服務器上存在的登錄名的用戶名和密碼,所以這次impersonate調用可以工作,但它仍然無法訪問網絡共享,因爲網絡共享用戶名和密碼不同。
最後,我在與網絡共享匹配的網絡服務器上創建了完全相同的用戶名/密碼。這次模擬函數調用起作用,網絡共享也起作用。我能夠成功地從共享中讀取。
所以我的問題是,有沒有一種方法可以讀取網絡共享,而無需在網絡服務器中添加用戶名。 '每當網絡共享登錄更改時,我必須再次在Web服務器中創建一個新用戶名。哪個不理想。
任何想法?
因此,我們需要在兩臺服務器上都有理想的用戶名/密碼,對吧?我正在尋找一些不需要我在Web服務器上創建用戶名的東西。謝謝。 順便說一句,我的網絡共享是在FEDORA而不是Windows服務器,不知道這是否有任何區別。 – ace 2009-09-30 05:26:18
對不起,你原來的帖子並不清楚 - 如果你不關心存儲其他服務器的用戶名/密碼,我添加了一些應該工作的東西。 – nitzmahone 2009-09-30 17:07:05
哇...看起來像我的問題的解決方案...我會嘗試讓你知道它是否工作。感謝的人... 我想加密網絡登錄和存儲在數據庫服務器上,所以我想它應該沒問題。 – ace 2009-10-01 02:42:36