實現一個2008serve的IIS的虛擬目錄(通過網絡路徑(UNC)的形式,共享在另外一個2008服務器上


目的:實現一個2008serve的IIS的虛擬目錄(通過網絡路徑(UNC)的形式,共享在另外一個2008服務器上)

准備工作

1.共享資源服務器為 ShareServer,IP地址為:192.168.100.10;

2.Web服務器為 WebServer,IP地址為:192.168.100.20

詳細步驟:

一、共享賬戶的建立

1.在WebServer上建立一個用戶名,方便使用該用戶讀取ShareServer上的共享目錄,我們可以直接把該用戶歸入IIS_IUSRS組內。在這里我們建立名IIS_SHARED,密碼123456;
2.在ShareServer中也建立一個同名的密碼的用戶(必須一致,否則在UNC驗證的時候會無法登陸)。這里用戶名也應該為 IIS_SHARED,密碼為 123456,也歸入IIS_IUSRS組中;
二、共享位置的建立

ShareServer 中使用文件夾共享工具,共享出一個目錄,共享名為 web,共享權限設置為 Administrators 組 讀取+寫入,IIS_SHARED用戶 讀取(如果需要存東西,就加上 寫入 權限);
這里 Administrators 用戶必須擁有 讀取+寫入 權限,否則在 WebServer 里使用IIS直接設置的時候會提示無法保存設置。
共享位置的文件夾安全設置也必須加入 IIS_SHARED的 讀取運行 權限

Window2008 文件夾共享需要設置一下,不像XP那么簡單,這方面的資料蠻多的,我就不累贅了^_^;
三、IIS中引用共享目錄

WebServer 中IIS里建立站點或虛擬目錄,路徑指向 \\192.168.100.10\web,連接認證用戶手動輸入為 IIS_SHARED,密碼 123456。
當第1步完成的時候,您已經通過web方式訪問該站點或虛擬目錄中的來自 ShareServer 共享目錄的資源,但是 ASP.Net 還沒有權限執行。

ASP.Net的權限設置
從站點根目錄下打開 web.config 文件,在 <system.web> 節點以內,加入以下內容:

<identity impersonate="true" userName="IIS_SHARED" password="123456" />

其實就是修改了 ASP.Net 執行的認證方式,把認證方式修改為 ASP.Net模擬用戶 ,這樣就能讓 ASP.Net 通過剛才建立的共享賬號執行和訪問 ShareServer 中的資源了。

附注:
本文中的ASP.Net權限設置內容中,直接把用戶和密碼都寫入 web.config 文件內,這樣做安全性不是很好,可以使用以下方法提高安全性:
從微軟下載工具 aspnet_setreg.exe (附送下載地址:http://download.microsoft.com/download/2/9/8/29829651-e0f0-412e-92d0-e79da46fd7a5/aspnet_setreg.exe) 下載后請解壓,這是一個壓縮包。
在 WebServer 中使用 aspnet_setreg.exe 執行以下指令:
aspnet_setreg.exe -k:SOFTWARE\AspNetIdentityAPP\identity -u:"IIS_ShareUser" -p:"123456"
備注:這里的AspNetIdentityAPP\identity 可以根據你個人的愛好來設置,只要在讀取的地方對應就行了。
成功執行后打開注冊表編輯器,打開目錄 HKLM\SOFTWARE\AspNetIdentityAPP\identity 會看到 userName 和 password 已經被系統加密了。

我們需要授予IIS進程用戶權限,以方便IIS用戶讀取這個加密后的配置,右鍵-->權限,加入 NetWork Service組(如果是WIN2003以下版本,IIS進程用戶應為ASPNET) 讀取 權限。
打開站點根目錄下的 web.config ,把 <identity impersonate="true" userName="IIS_ShareUser" password="123456" /> 替換為
<identity impersonate="true" userName="registry:HKLM\SOFTWARE\AspNetIdentityAPP\identity\ASPNET_SETREG,userName" password="registry:HKLM\SOFTWARE\AspNetIdentityAPP\identity\ASPNET_SETREG,password" />
保存退出即可,這樣就完成了整個過程,安全性也得到了提升。

四、設置目錄的安全級別

進入命令提示窗口執行以下命令,找到.net的下的目錄:\WINDOWS\Microsoft.NET\work\v2.0.50727\,在該目錄下執行:caspol.exe -m -ag 1 -url "////\\computername\sharename\*" FullTrust -exclusive on,回車后提示是否執行,鍵入y回車;
成功執行命令后,在執行iisreset重啟IIS;
注意:該命令設置目錄的執行的安全級別后,就不需要在應用的web.config中設置安全級別了(<level trust="full" ulr=""/>)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM