获取 NTFS 访问权限
Get NTFS Access Rights
我正在寻找一种递归地列出文件夹中所有访问权限的方法。
现在我有这个代码:
$logfile = "C:\temp\test.txt"
$testpath = "H:\"
dir $testpath -Recurse | Get-Acl | Out-File $logfile
但这并没有列出所有访问权限。
有人知道哪里出了问题吗?
编辑:
目前它看起来像这样:
Boardmaker
HEALTH\infsst_sys
VORDEFINIERT\Administratoren Allow FullControl...
Get-Acl
生成一个复杂的数据结构,其中包含有关对象的所有者和访问信息。您需要展开该对象的 Access
属性 以获得您想要的信息:
Get-ChildItem $testpath -Recurse | ForEach-Object {
$file = $_.FullName
Get-Acl -Path $file | Select-Object -Expand Access |
Select-Object @{n='File';e={$file}}, IdentityReference, FileSystemRights,
AccessControlType
} | Export-Csv $logfile -NoType
我正在寻找一种递归地列出文件夹中所有访问权限的方法。 现在我有这个代码:
$logfile = "C:\temp\test.txt"
$testpath = "H:\"
dir $testpath -Recurse | Get-Acl | Out-File $logfile
但这并没有列出所有访问权限。
有人知道哪里出了问题吗?
编辑: 目前它看起来像这样:
Boardmaker HEALTH\infsst_sys VORDEFINIERT\Administratoren Allow FullControl...
Get-Acl
生成一个复杂的数据结构,其中包含有关对象的所有者和访问信息。您需要展开该对象的 Access
属性 以获得您想要的信息:
Get-ChildItem $testpath -Recurse | ForEach-Object {
$file = $_.FullName
Get-Acl -Path $file | Select-Object -Expand Access |
Select-Object @{n='File';e={$file}}, IdentityReference, FileSystemRights,
AccessControlType
} | Export-Csv $logfile -NoType