如何使用get-acl powershell获得确切的权限?

如何使用get-acl powershell获得确切的权限?,powershell,Powershell,我对一个在powershell中使用get acl并将其导出到文件的脚本有异议。 我试图做的是从文件服务器中导出具有ISInhered标志Flase的所有权限。这一部分工作得很好,但我只能在这些文件夹上获得允许或拒绝类型。我需要的是知道给定文件夹的确切权限。该用户是否允许读、写、执行等。以下是我所做工作的完整代码: $OutFile = "C:\install\powershell\Permissions.txt" $Header = "Folder Path,IdentityReference

我对一个在powershell中使用get acl并将其导出到文件的脚本有异议。 我试图做的是从文件服务器中导出具有ISInhered标志Flase的所有权限。这一部分工作得很好,但我只能在这些文件夹上获得允许或拒绝类型。我需要的是知道给定文件夹的确切权限。该用户是否允许读、写、执行等。以下是我所做工作的完整代码:

$OutFile = "C:\install\powershell\Permissions.txt"
$Header = "Folder Path,IdentityReference,AccessControlType,IsInherited,InheritanceFlags,PropagationFlags"
Del $OutFile
Add-Content -Value $Header -Path $OutFile 

$RootPath = "C:\install\powershell\"

$Folders = dir $RootPath -recurse | where {$_.psiscontainer -eq $true}

foreach ($Folder in $Folders){ 
$ACLs = get-acl $Folder.fullname | ForEach-Object { $_.Access } 
Foreach ($ACL in $ACLs){ 
if ($ACL.IsInherited -eq $false){ 
$OutInfo = $Folder.Fullname + "," + $ACL.IdentityReference + "," + $ACL.AccessControlType + "," + $ACL.IsInherited + "," + $ACL.InheritanceFlags + "," + $ACL.PropagationFlags 
Add-Content -Value $OutInfo -Path $OutFile 
}}}
所以我的问题是:如何添加$ACL。以获取确切的权限级别。有可能吗? 如何获取某种类型的对象列表,以便解析ACL
s?
如果我错误地解释了我的问题或问题已经得到解答,我
m很抱歉,但由于今天是我使用powershell的第一天,我可能不知道如何正确搜索答案

致以最良好的祝愿

UPD:看来我可以试着玩$ACL.FileSystemRights。如果这篇文章给了我想要的,我会更新它。 UPD2:是的,似乎我必须在$Header中添加FileSystemRights,在$OutInfo中添加“+$ACL.FileSystemRights+”
对不起打扰了!但这可能会帮助某人得到他们需要的东西!:)

希望将recurse设置为特定的深度。 找到了一个解决方案:使用“*”而不是-recurse。 对于2级深:“**”等。 资料来源:


Thanx.

答案的链接可能会随着时间的推移而改变。你能在这里为你的潜在解决方案记录相关代码吗?