我想使用PowerShell列出域用户的所有Windows组成员身份。我怎样才能做到这一点?
答案 0 :(得分:2)
我不确定“列出所有用户权限”的确切含义 - 但您的域名中的群组成员资格很简单:
$de = New-Object System.DirectoryServices.DirectoryEntry
$ds = New-Object System.DirectoryServices.DirectorySearcher($de)
$ds.Filter = "(&(objectClass=User)(sAMAccountName=goyuix))"
$user = $ds.FindOne()
$user.Properties.memberof
memberof
属性应包含该帐户的所有组成员身份列表。您需要更新Filter
以使用适当的登录而不是我的硬编码用户。
答案 1 :(得分:1)
gyurisc!这是你的意思吗?
function Get-ProfilesList {
$hive = "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList"
#проверка нужна лишь на время отладки
if (Test-Path $hive) {
gci $hive | % -b {$prof = @()} -p {$dest = "" | select UserName, Sid, ProfilePath
$dest.Sid = $_.PSChildName
$dest.ProfilePath = (gp ($hive + "\" + $_.PSChildName)).ProfileImagePath
$dest.UserName = Split-Path $dest.ProfilePath -leaf
$prof += $dest
} -end {$prof}
}
}
Get-ProfilesList | ft -auto