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

Windows
Windows补丁和更新常见问题解决方法
SFC无需光盘出马,硬盘搞定
巧妙设置Vista任务栏和开始菜单的属性
如何删除Vista系统文件
盗版xp黑屏的解决办法(把盗版xp成功验证成正版软件)附正版验证文件
微软反盗xp黑屏破解方法
为避免10月20号后盗版系统出现黑屏的bat文件
Vista 新命令收集整理完整版
不用光盘直接硬盘安装Windows 2008系统方法
Windows2008 对决 Windows Vista优势
扩展Windows Server 2008激活期限方法
Windows Server 2008 NAP教程
win2008最新激活方法公布[图文]
硬盘安装Win 2008 32/64位的方法区别
Win2008中的一些设置技巧
Vista系统中IE提示证书错误解决方法[图文]
win2003 服务器优化策略12条
Windows系统虚拟内存的设置优化方法整理[图文]
XP win2003系统 微软雅黑字体的使用方法
Vista 不显示上次登陆用户名的设置方法

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-01-16   浏览: 60 ::
收藏到网摘: 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

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