宝塔服务器面板,一键全能部署及管理,送你10850元礼包,点我领取

在Windows Vista和Windows Server 2003 Service Pack 2中,微软提供了一个新的命令行工具Icacls,你可以使用它来查看、设置、保存并恢复文件夹或文件的权限。它在功能上比以往的Cacls更为强大。

ICACLS name /save aclfile [/T] [/C] [/L] [/Q]

将所有匹配名称的 ACL 存储到 aclfile 中以便将来用于 /restore.

ICACLS directory [/substitute SidOld SidNew […]] /restore aclfile

[/C] [/L] [/Q]

将存储的 ACL 应用于目录中的文件。

ICACLS name /setowner user [/T] [/C] [/L] [/Q]

更改所有匹配名称的所有者。

ICACLS name /findsid Sid [/T] [/C] [/L] [/Q]

查找包含显式提及 SID 的 ACL 的所有匹配名称。

ICACLS name /verify [/T] [/C] [/L] [/Q]

查找 ACL 不标准或长度与 ACE 计数不一致的所有文件。

ICACLS name /reset [/T] [/C] [/L] [/Q]

为所有匹配文件使用默认继承的 ACL 替换 ACL

ICACLS name [/grant[:r] Sid:perm[…]]

[/deny Sid:perm […]]

[/remove[:g|:d]] Sid[…]] [/T] [/C] [/L]

[/setintegritylevel Level:policy[…]]

/grant[:r] Sid:perm 授予指定用户访问权限。使用 :r,

该权限将替换以前授予的所有显式权限。

不使用 :r,该权限将添加到以前授予的所有显式权限。

/deny Sid:perm 显式拒绝指定的用户访问权限。

已经为规定的权限添加了显式拒绝 ACE,

删除所有显式授予的权限中的相同权限。

/remove[:[g|d]] Sid 删除 ACL 中所有出现的 SID.使用

:g,删除授予该 SID 的所有权限。使用

:d,删除拒绝该 SID 的所有权限。

/setintegritylevel [(CI)(OI)] 级别将完整性 ACE 显式添加到所有匹配文件。要指定的级别为以下级别之一:

L[ow]

M[edium]

H[igh]

完整性 ACE 的继承选项可以优先于级别,但只应用于目录。

注意:

Sids 可能是数字格式或友好的名称格式。如果给定数字格式,

那么请在 SID 的开头添加一个 *.

/T 指示在以该名称指定的目录下的所有匹配文件/目录上

执行此操作。

/C 指示该操作将在所有文件错误上继续。仍将显示错误消息。

/L 指示此操作在符号链接本身而不是其目标上执行。

/Q 表示 icacls 应该压制成功的消息。

ICACLS 保留 ACE 项的规范顺序:

显式拒绝

显式授予

继承的拒绝

继承的授予

perm 是权限掩码,可以两种格式之一指定:

简单权限序列:

F – 完全访问权限

M – 修改权限

RX – 读取和执行权限

R – 只读权限

W – 只写权限

在括号中以逗号分隔列表的特定权限:

D – 删除

RC – 读取控制

WDAC – 写入 DAC

WO – 写入所有者

S – 同步

AS – 访问系统安全性

MA – 允许的最大值

GR – 一般性读取

GW – 一般性写入

GE – 一般性执行

GA – 全为一般性

RD – 读取数据/列出目录

WD – 写入数据/添加文件

AD – 附加数据/添加子目录

REA – 读取扩展属性

WEA – 写入扩展属性

X – 执行/遍历

DC – 删除子项

RA – 读取属性

WA – 写入属性

继承权限可以优先于每种格式,但只应用于

目录:

(OI) – 对象继承

(CI) – 容器继承

(IO) – 仅继承

(NP) – 不传播继承

示例:

icacls c:windows* /save AclFile /T

– 将 c:windows 及其子目录下所有文件的

ACL 保存到 AclFile.

icacls c:windows /restore AclFile

– 将还原 c:windows 及其子目录下存在的 AclFile 内

所有文件的 ACL

icacls file /grant Administrator:(D,WDAC)

– 将授予用户对文件删除和写入 DAC 的管

理员权限

icacls file /grant *S-1-1-0:(D,WDAC)

– 将授予由 sid S-1-1-0 定义的用户对文件删

除和写入 DAC 的权限