Windows XP Windows 7 Windows 2003 Windows Vista Windows教程綜合 Linux 系統教程
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟件教程
 Windows教程網 >> Windows Server系統教程 >> Server 2000 >> FSO在Win2000服務器中的解決方案

FSO在Win2000服務器中的解決方案

日期:2017/2/10 9:33:01      編輯:Server 2000

ASP 執行時,是以“IUSR_機器名”的身份訪問硬盤的,這裡沒給該用戶帳號權限,ASP 也就不能讀寫硬盤上的文件了。

解決方法:在服務器上打開資源管理器,用鼠標右鍵點擊asp文件所在目錄或硬盤分區,選擇“屬性”,選擇“安全”選項卡,此時就可以看到有哪些帳號可以訪問這個目錄,分區(卷)及訪問權限。默認安裝後,出現的是“Everyone”具有完全控制的權限。點“添加”,將“IUSR_機器名”給予“完全控制”或相應的權限。

這樣做有一定的安全隱患,因為通過fso可以獲得讀寫文件的權限,容易被黑客利用,下面是一種方法。

我們知道,除了CreateObject方法以外,也可以使用一般的標注建立一個組件,我們可以在ASP裡面使用HTML

Runat表示是在服務端執行,Scope表示組件的生命周期,可以選用Session,Application或page(表示當前頁面,也可缺省) 

我們也可以通過修改該Clsid的值而禁用該組件,如將注冊表中HKEY_CLASSES_ROOT\Scripting.FileSystemObject\CLSID的值0D43FE01- F093-11CF-8940-00A0C9054228改成0D43FE01-F093-11CF-8940-00A0C9054229(改了最後面一位),這時候的寫法為:

CF-8940-00A0C9054229">

看運行結果,沒問題,OK。這時候我們再用CF-8940-00A0C9054228">這時候就出錯了。

新建一用戶:iusr_domain

IIS裡設置對應站點的匿名用戶IUSR_DOMAIN

CACLS: 設置目錄權限

這樣FSO可用,但不會影響別人

預防的辦法:

限制用戶使用FileSystemObject對象。一種極端的做法是完全反注冊掉提供FileSystemObject對象的那個組件,也就是Scrrun.dll。具體的方法如下:

在MS-DOS狀態下面鍵入:

Regsvr32 /u c:\windows\system\scrrun.dll

(注意:在實際操作的時候要更改成為你本地的實際路徑)

 

Copyright © Windows教程網 All Rights Reserved