我最近的任务是更新我们用户主驱动器上的权限结构。我有一个名为 home 的目录和 home 下面的每个用户的文件夹。主页级别有两个组,这些组被强制下放到每个用户文件夹中。用户文件夹设置为从其父文件夹继承,然后用户设置为仅访问其文件夹。
我正在尝试编写一个 powershell 脚本,它会告诉我是否有任何文件夹留下了特定的 ACL。这就是我最终得到的结果,它似乎只是返回指定目录的子文件夹列表,因为我只想要具有指定 ACL 的文件夹。
$path = "\\server\share"
$folders = Get-ChildItem $path | where {$_.psiscontainer}
foreach ($folder in $folders)
{
$domain = "domname"
$aclname = "ACLname"
$aclfullname ="$domain\$aclname"
Get-Acl | select -ExpandProperty Access | where {$_.identityreference -contains $aclfullname}
Write-Host $folder.FullName
}
如果我使用以下内容,它只返回一个结果,但它返回 ACL 而不是文件夹名称。
$path = "\\node1\home"
$domain = "morgan-cole"
$aclname = "gsherlock"
$aclfullname ="$domain\$aclname"
Get-ChildItem $path | where {$_.psiscontainer} | Get-Acl | select -ExpandProperty Access | where {$_.identityreference -contains $aclfullname}
有任何想法吗?希望我的要求是有意义的。