icacls是windows内置命令行工具,用于精确查看和修改ntfs权限,支持递归(/t)、忽略错误(/c)、授权(/grant)、拒绝(/deny)、重置(/reset)及备份还原(/save /restore)等操作。
直接在图形界面或命令行中查看 ntfs 权限,是确认当前访问控制是否符合预期的第一步。关键不在于“能不能看”,而在于“看到的是不是真实生效的权限”——尤其要注意继承、拒绝项和有效权限的叠加效果。
图形界面查看(适合单个对象快速确认)
右键目标文件或文件夹 → 【属性】→ 【安全】选项卡:
- 列表中显示的用户/组及其勾选状态,是该对象上显式设置的允许权限(不含继承来的)
- 若某用户未出现在列表中,不代表无权访问——可能通过所属组(如 Users、Authenticated Users)间接获得权限
- 点击【高级】可查看更细粒度权限(如“遍历文件夹”“更改权限”),并看到“继承自”路径,判断是否来自上级目录
- 勾选“显示继承的权限”或点击【有效访问】→ 输入用户名 → 【确定】,能模拟该用户实际拥有的最终权限(含累加与拒绝优先级)
命令行查看(适合批量、脚本或排除干扰)
以管理员身份运行 PowerShell 或 CMD,使用 icacls 命令:
- 基础查看:`icacls "C:\MyFolder"` —— 显示该文件夹自身的显式权限条目,标注 (I) 表示继承,(OI)(CI) 表示可继承给子项
- 递归查看全部子项:`icacls "C:\MyFolder" /t` —— 列出所有子文件夹和文件的权限,便于发现深层异常
- 忽略访问被拒的子项继续执行:`icacls "C:\MyFolder" /t /c` —— 避免因权限不足中断扫描
- 输出中常见缩写:F=完全控制,M=修改,RX=读取和执行,R=读取,W=写入,D=删除,DENY条目优先级最高
特别注意几个易错点
NTFS 权限不是“所见即所得”,以下情况会导致界面显示与实际行为不符:
- 用户属于多个组,权限会累加;但只要任一组被明确拒绝某项操作(如删除),该操作就一定失败
- 即使【安全】选项卡里没看到某个用户,只要其所在组有权限,且未被拒绝,依然可以访问
- 共享文件夹时,最终访问权限是共享权限与 NTFS 权限中更严格者,仅看 NTFS 不代表网络访问结果
- 某些系统文件夹默认禁用继承,并设有多层特殊权限,直接看【安全】选项卡可能只显示“管理员”和“SYSTEM”,需点【高级】才见全貌











