兩台服務器進行配合,假設兩台服務器如下:
(1)Web應用服務器 192.168.12.226 ,IIS7.0+
(2)文件服務器192.168.12.66,WindowsXP/7/Server系統
1. 建立共享賬戶
兩台服務器上,創建項目相同用戶名、密碼的用戶。具體的使用權根據需要靈活配配置。
2. 建立共享目錄
在文件服務器上(192.168.12.66)創建一個目錄,並指定為共享目錄。目錄設置權限,允許“共享賬戶”讀寫權限
3. IIS中配置“虛擬目錄”
在IIS中新建網站,並正常配置。重點說一下“遠程共享目錄”部分。首先右鍵項目網站節點->添加虛擬目錄->錄入目錄名稱、網絡路徑->連接為->特定用戶。設置“共享用戶”訪問,填入用戶名和密碼。
4. 系統安全策略配置
應用服務器(192.168.12.226)找到本地安全策略-本地策略->安全選項->網絡安全:LAN管理器身份驗證級別,默認是“沒有定義”,更改為“發送LM和NTLM響應”。設置該項后,則IIS中網站下“虛擬目錄”將允許讀取文件服務器(共享目錄)上的文件。
5. Web.config配置
經過之前的步驟,項目已經可以引入虛擬目錄,擁有讀取權限,但是沒有寫入操作權限。通過配置項目中Web.config的配置,來賦予操作權限。
<system.web>
<identity impersonate="true" userName=" " password="" />
</system.web>
最終, ASP.Net 通過該“共享賬號”執行和訪問 文件服務器上共享目錄的資源。同時考慮安全性,ASP.NET提供了對用戶名和密碼的加密,以及內嵌機制。這里不再詳細說,百度一下吧。大致的過程就是上述5步。
補充:
IIS6中對該過程的配置比較簡單,主要卻別在於Windows、IIS不同版本安全機制的區別。IIS6中在“添加虛擬目錄”過程中,寫入“共享用戶”,並賦予“寫入”權限即可(共享用戶創建還是需要,不需要4、5步驟)