You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PowerShell如何仅枚举单个文件或文件夹的访问权限?

单个文件夹/文件NTFS权限查询方案

原脚本输出过大的核心原因是使用了-Recurse参数触发了全目录递归扫描,去掉递归逻辑、仅针对目标路径查询即可实现单对象权限拉取。

优化后脚本

# 定义要查询的单个文件夹/文件路径,支持本地路径和UNC路径
$targetPath = "\\fs1\目标文件夹" 
# 定义权限报告输出路径
$reportPath = "C:\temp\单路径ACL.csv"

# 获取目标路径的ACL权限,仅查询指定路径本身,不递归子对象
Get-Acl -Path $targetPath | ForEach-Object {
    $_.Access | Add-Member -MemberType NoteProperty -Name "查询路径" -Value $targetPath -PassThru
} | Export-Csv -Path $reportPath -NoTypeInformation -Encoding UTF8

使用说明

  • 脚本执行前需确保运行PowerShell的身份对目标路径有读取权限,否则会返回权限不足错误
  • 输出的CSV包含查询路径、身份主体、允许/拒绝类型、具体权限、继承配置等完整ACL字段,可直接用于权限审计
  • 无需输出文件时可删除末尾| Export-Csv ...部分,权限结果会直接打印在PowerShell控制台中

补充说明

直接在AD中查询无法得到正确文件权限的原因是:NTFS权限存储在文件系统的元数据中,并非存储在AD数据库内,AD仅存储用户、组等身份主体信息,必须直接访问目标路径拉取ACL才能得到准确结果。

内容的提问来源于stack exchange,提问作者Seth Templet

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 05:36:03