随着Windows XP/Server 的流行越来越多的用户开始选择NTFS文件系统NTFS的好处自然是大大增强了系统的安全性在安全标签页下我们可以在这里为不同级别的用户设置相应的访问控制权限包括完全控制修改读取和运行列出文件夹目录读取写入特别的权限等你只需要在允许和拒绝下简单勾选即可点击高级按钮还可以设置更多的特殊权限这里就不多说了 其实除了在图形用户界面下对文件或文件夹的访问控制权限进行设置外我们还可以在命令行方式下完成这项工作这在由于某些原因无法进入图形用户界面时特别实用虽然使用时有些麻烦但却可以救急 一使用Cacls.exe命令 这是一个在Windows /XP/Server 操作系统下都可以使用的命令作用是显示或者修改文件的访问控制表在命令中可以使用通配符指定多个文件也可以在命令中指定多个用户命令语法如下 Cacls filename [/T] [/E] [/C] [/G usererm] [/R user []] [/P usererm []] [/D user []] Filename显示访问控制列表(以下简称ACL) /T更改当前目录及其所有子目录中指定文件的ACL /E编辑ACL而不替换 /C在出现拒绝访问错误时继续 /G Userer:perm赋予指定用户访问权限Perm代表不同级别的访问权限其值可以是R(读取)W(写入)C(更改写入)F(完全控制)等 /R user撤销指定用户的访问权限注意该参数仅在与/E一起使用时有效 /P userperm替换指定用户的访问权限perm的含义同前但增加了N(无)的选项 /D user拒绝指定用户的访问 实例一查看文件夹的访问控制权限 例如这里我们希望查看h:\temp文件夹的访问控制权限那么只需要在开始→运行对话框或切换到命令提示符模式下键入如下命令 Cacls h:\temp 此时我们会看到所有用户组和用户对h:\temp文件夹的访问控制权限项目这里的CI表示ACE会由目录继承OI表示ACE会由文件继承IO表示ACI不适用于当前文件或目录每行末尾的字母表示控制权限例如F表示完全控制C表示更改W表示写入 如果你希望查看该文件夹中所有文件(包括子文件夹中的文件)的访问控制权限(见图)可以键入Cacls h:\temp 命令 实例二修改文件夹的访问控制权限 假如你希望给予本地用户wzj完全控制h:\temp文件夹及子文件夹中所有文件的访问权限只需要键入如下命令 Cacls h:\temp /t /e /c /g wzj:f 这里的/t表示修改文件夹及子文件夹中所有文件的ACL/e表示仅做编辑工作而不替换/c表示在出现拒绝访问错误时继续而/g wzj:f表示给予本地用户wzj以完全控制的权限这里的f代表完全控制如果只是希望给予读取权限那么应当是r 实例三撤销用户的访问控制权限 如果你希望撤销wzj用户对h:\temp文件夹及其子文件夹的访问控制权限可以键入如下命令 cacls h:\temp /t /e /c /r wzj 如果只是拒绝用户的访问那么可以键入如下命令 cacls h:\temp /t /e /c /d wzj 二使用增强工具xcals.exe 在windows 资源工具包中微软还提供了一个名为xcaclsexe的文件控制权限修改工具其功能较caclsexe更为强大可以通过命令行设置所有可以在windows资源管理器中访问到的文件系统安全选项我们可以从clsoasp下载安装后即可使用 xcaclsexe命令的语法和参数与caclsexe基本相同但不同的是它通过显示和修改文件的访问控制列表(acl)执行此操作在/g参数后除保持原有的perm权限外还增加了spec(特殊访问权限)的选项另外还增加了/y的参数表示禁止在替换用户访问权限时出现确认提示而默认情况下caclsexe是要求确认的这样在批处理中调用caclsexe命令时程序将停止响应并等待输入正确的答案引入/y参数后将可以取消此确认这样我们就可以在批处理中使用xcaclsexe命令了 实例一查看文件或文件夹的权限 在开始→运行对话框或切换到命令提示符模式下注意请事先将c:\program files\resource kit添加到系统属性→高级→环境变量→系统变量中或者通过cd命令将其设置为当前路径否则会提示找不到文件然后键入如下命令 xcacls h:\temp 此时我们会看到图所示的窗口这里可以查看到所有用户组或用户对h:\temp文件夹的访问控制权限io表示此ace不应用于当前对象ci表示从属窗口将继承此aceoi表示从属文件将继承该acenp表示从属对象不继续传播继承的ace而每行末尾的字母表示不同级别的权限例如f表示完全控制c表示更改w表示写入 实例二替换文件夹中的acl而不确认 xcacls h:\temp /g administrator:rw/y 以上命令将替换h:\temp文件夹中所有文件和文件夹的acl而不扫描子文件夹也不会要求用户确认 实例三赋予某用户对文件夹的控制权限 xcacls h:\temp /g wzj:rwed;rw /e 以上命令将赋予用户wzj对h:\temp文件夹中所有新建文件的读取写入运行和删除权限但需要说明的是这条命令只是赋予了用户对文件夹本身的读写权限而不包括子文件夹下的文件 对普通用户来说calsexe和xcaclsexe的作用可能不是那么明显这在windows /xp/server 的无人值守安装中特别有用管理员可以为操作系统所在的文件夹设置初始访问权限在将软件分发到服务器或工作站时还可以借助xcaclsexe提供单步保护以防止用户误删除文件夹或文件 |