示例:快速、批量部署文件夹共享权限等

1、查看文件夹含有权限 

icacls d:\1234\12
通过以上的命令可以看到下图 D盘里面的1234的文件夹权限明细
注意事项:
  对于继承的声明要放到具体权限之前。例如:(OI)(CI)(IO)(M)是对的,但(M)(OI)(CI)(IO)会提示无效的参数。

Icacls 批量修改、分配用户及文件夹权限(一)_第1张图片Icacls 批量修改、分配用户及文件夹权限(一)_第2张图片

2、给 12 文件夹 授权 用户:999  有读的权限

2.1 单独给12文件夹授权
icacls d:\1234\12 /grant 999:(OI)(CI)(RX) /T
2.2 批量给1234文件夹里面的所有文件夹和文件授权
icacls d:\1234\*.* /grant 999:(OI)(CI)(RX) /T
2.3 如果用户999之前有12文件夹的修改的权限,现在想改成读取的权限修改如下
icacls d:\1234\12 /grant[:r] 999:(OI)(CI)(RX) /T

关键词解释:/grant[:r] Sid:perm 授予指定的用户访问权限。如果使用 :r,
        这些权限将替换以前授予的所有显式权限。(如果你要修改以前的权限,建议添加:r,这样会让你的文件夹权限更清晰)
        如果不使用 :r,这些权限将添加到以前授予的
        所有显式权限。
        /T 指示在以该名称指定的目录下的所有匹配文件/目录上
        执行此操作。

 Icacls 批量修改、分配用户及文件夹权限(一)_第3张图片Icacls 批量修改、分配用户及文件夹权限(一)_第4张图片


3、给 12 文件夹 删除 用户:999  的权限

icacls d:\1234\12 /remove:g 999 /T
关键词解释:/remove[:[g|d]] Sid 删除 ACL 中所有出现的 SID。使用
        :g,将删除授予该 SID 的所有权限。使用
        :d,将删除拒绝该 SID 的所有权限。

Icacls 批量修改、分配用户及文件夹权限(一)_第5张图片Icacls 批量修改、分配用户及文件夹权限(一)_第6张图片



ICACLS 命令帮助语法如下:
>icacls   
ICACLS name /save aclfile [/T] [/C] [/L] [/Q]
    将匹配名称的文件和文件夹的 DACL 存储到 aclfile 中
    以便将来与 /restore 一起使用。请注意,未保存 SACL、
    所有者或完整性标签。
ICACLS directory [/substitute SidOld SidNew [...]] /restore aclfile
                 [/C] [/L] [/Q]
    将存储的 DACL 应用于目录中的文件。
ICACLS name /setowner user [/T] [/C] [/L] [/Q]
    更改所有匹配名称的所有者。该选项不会强制更改所有
    身份;使用 takeown.exe 实用程序可实现
    该目的。
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] [/Q]
       [/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 的继承选项可以优先于级别,但只应用于
        目录。
    /inheritance:e|d|r
        e - 启用继承
        d - 禁用继承并复制 ACE
        r - 删除所有继承的 ACE
注意:
    Sid 可以采用数字格式或友好的名称格式。如果给定数字格式,
    那么请在 SID 的开头添加一个 *。
    /T 指示在以该名称指定的目录下的所有匹配文件/目录上
        执行此操作。
    /C 指示此操作将在所有文件错误上继续进行。
        仍将显示错误消息。
    /L 指示此操作在符号
      链接本身而不是其目标上执行。
    /Q 指示 icacls 应该禁止显示成功消息。
    ICACLS 保留 ACE 项的规范顺序:
            显式拒绝
            显式授予
            继承的拒绝
            继承的授予
    perm 是权限掩码,可以指定两种格式之一:
        简单权限序列:
                N - 无访问权限
                F - 完全访问权限
                M - 修改权限
                RX - 读取和执行权限
                R - 只读权限
                W - 只写权限
                D - 删除权限
        在括号中以逗号分隔的特定权限列表:
                DE - 删除
                RC - 读取控制
                WDAC - 写入 DAC
                WO - 写入所有者
                S - 同步
                AS - 访问系统安全性
                MA - 允许的最大值
                GR - 一般性读取
                GW - 一般性写入
                GE - 一般性执行
                GA - 全为一般性
                RD - 读取数据/列出目录
                WD - 写入数据/添加文件
                AD - 附加数据/添加子目录
                REA - 读取扩展属性
                WEA - 写入扩展属性
                X - 执行/遍历
                DC - 删除子项
                RA - 读取属性
                WA - 写入属性
        继承权限可以优先于每种格式,但只应用于
        目录:
                (OI) - 对象继承
                (CI) - 容器继承
                (IO) - 仅继承
                (NP) - 不传播继承
                (I) - 从父容器继承的权限
示例:
        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 的权限。