小编Jas*_*ore的帖子

是否可以列出我无权访问的所有权限

我正在寻找一种方法来递归遍历我的整个文件共享(相当大的 3TB 文件)并列出我无权访问的所有文件/文件夹。由于迁移和大路径(超过 255 个字符)上的一些错误,我们发现一些文件夹/文件丢失了所有权限,需要一种方法来找到它们。目前作为域管理员用户,我无法列出权限或所有者。我可以控制它并重置权限,但是我有太多的文件/文件夹,我想将其输出到 CSV 文件或其他内容。

我试过以下:

get-childitem "\,\fileshare\f$\folder\etc" -recurse | get-acl
Run Code Online (Sandbox Code Playgroud)

这似乎工作得很好,它为我提供了所有存在并对其具有适当权限的文件/文件夹的 ACL。但是一旦它进入我无权访问的文件夹,我就会收到以下错误:

Get-Acl : Attempted to perform an unauthorized operation.
At line:1 char:133
+ get-childitem "\,\fileshare\f$\folder\etc" -re
curse | get-acl <<<<
    + CategoryInfo          : NotSpecified: (:) [Get-Acl], UnauthorizedAccessException
    + FullyQualifiedErrorId : System.UnauthorizedAccessException,Microsoft.PowerShell.Commands.GetAclCommand
Run Code Online (Sandbox Code Playgroud)

这些是我想记录到 CSV/TXT 文件中的错误,并忽略所有其余的权限,如果每个错误方式也可以以更多行输出,那将是理想的。

只是想知道是否有人对我应该如何进行有想法或提示?

(请注意上面的路径中有逗号是故意不解析为真实路径

\,\fileshare\f$\folder\etc)
Run Code Online (Sandbox Code Playgroud)

谢谢!

windows powershell permissions ntfs access-control-list

5
推荐指数
1
解决办法
7144
查看次数