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

Windows
Windows Vista下系统评分无法完成的问题
Vista SP2正式版主题手动破解补丁及使用方法
Windows7 操作系统的全新任务栏
WINDOWS 任务计划 循环执行某程序的任务计划设置
服务器维护和计划任务使用方法
Windows Vista系统常用术语列表
Windows 任务管理器使用技巧
Vista 利用组策略 保护个人隐私
Vista 组策略解决非常任务 推荐
Windows Server 2008提升AD管理效率
Windows Server 2008 帐户管理经验谈
Windows Server 2008作为打印服务器排错
Windows Server 2008下Backup功能全通透
用Windows Server Backup搞定服务器备份
让Windows Server 2008设备驱动顺利“落户”
灵活设置Windows Server 2008应对系统管理谜局
设置系统 让共享访问不再磕磕碰碰
微软宣布Windows 7和Windows 2008 R2上市时间表
让Windows Server 2008系统安全更上一层楼
微软公布Windows Server 2008 R2最终发售日期

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


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

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