我有一个用户列表,我需要知道他们的 active Directory 组成员身份是什么。我需要他们在一个 csv 中使用用户名、组名和组类型(分发安全性)将它们组合在一起,但我运气不佳。下面是我尝试编写和使用的 Powershell 脚本。
$Users = Get-Content -Path 'C:\Scripts\Lists\UserDistro.txt'
Foreach ($user in $users) {
$GroupName = Get-ADPrincipalgroupmembership $user | Select-Object -Property Name
$GroupType = Get-ADPrincipalgroupmembership $user | Select-Object -Property GroupCategory
$Results = @{'username'=$User;'Group'=$GroupType}
$obj = New-Object -TypeName PSObject -Property $Results
Write-Output $Obj | Format-table -AutoSize
我得到的输出是这样的:
username Group GroupType
-------- ----- ---------
psmith {@{Name=Domain Users},@{Name=Group1},@{Name=Group2},@{Name=Group3:}...} {@{GroupCategory=Security},@{GroupCategory=Security},@{...
我遇到的问题是
- 列表被截断,应该有比这里显示的更多的组
- 我不需要所有这些外围信息@{Name=只需要组名
- 我该如何排序以便群组名称和群组类型阵容?