当前位置: 首页 > 图文教程 > 操作系统 > Windows > FSO在Win2000服务器中的解决方案

Windows
Windows 2008之AD LDS轻型目录服务解析
解析Windows Server 2008服务器管理控制台
在Windows2008下如何通过命令行来管理磁盘
Windows Server 2008疑难杂症
Windows Server 2008 R2新增功能浅析
严密防范Windows Server 2008的安全威胁
微软官方操作系统已经升级
受益无穷 破解Windows Server 2008疑难杂症
IIS7在Windows Server 2008R2的新改进
用Spotlight实时监控Windows Server 2008
Windows Server 2008下共享资源访问走捷径
Windows Server 2008中审核和符合性
Windows Server 2008:手足之争下的赢家
Windows Server 2003环境更改Boot.ini文件
Windows Server 08将内置RSA的DLP
通透Windows 2008系统状态变化
Windows Server 2008域环境下组策略两例应用
提升Windows Server 2008的AD管理效率
Windows Server 2008 SP2即将发布
Windows Server 2008服务器管理器之角色配置

Windows 中的 FSO在Win2000服务器中的解决方案


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-01-16   浏览: 46 ::
收藏到网摘: n/a

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

(注意:在实际操作的时候要更改成为你本地的实际路径)