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

Windows
Windows7系统的特殊隐藏分区
禁用Win 7中的AeroSnap最大化功能
巧妙延长Windows 7使用期限限为1年
Windows2008系统和XP系统共同使用相同的缓存空间
如何安全删除USB的命令
Windows 7的10大特色功能
启用Windows 2008系统的软路由功能
添加Dropbox服务到系统右键菜单
配置启用Windows 2008脱机文件功能
Windows 7系统中的UAC有什么改善?
Windows 7可以更换系统主题吗?
Windows7的系统托盘区域有什么改进
Windows 7是否支持壁纸自动换功能?
教你一招配置Windows系统的页面文件
Windows 7中显示桌面有几种方法?
系统问答 System Idle Process是什么
Windows 7的系统评分是怎么回事儿?
Hyper-V缩小Windows 7安装镜像体积
安装Windows 7需要多大的磁盘空间?
Windows 7内置了多少种驱动程序?

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


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

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