我的任务是导出几个 AD 组的成员,.csv
过去我一直使用Get-ADGroupMember
powershell 中的命令来执行此操作,指定组名,选择我需要的属性,然后使用export-csv
。
但我似乎遇到了一个组的问题,这似乎与 AD 组的成员属于不同林中的外部域有关。基本上,我运行以下命令,但输出文件为空白。
Get-ADGroupMember -identity "VPN Users" | select name | Export-csv -path c:\vpnuserslist.csv -NoTypeInformation
输出如下:
PS C:\Windows> Get-ADGroupMember -identity "VPN Users" | select name | Export-Csv -Path c:\vpnuserstest.csv -NoTypeInformation
Get-ADGroupMember : The operation completed successfully
At line:1 char:18
+ Get-ADGroupMember <<<< -identity "VPN Users" | select name | Export-Csv -Path c:\vpnuserstest.csv -NoTypeInformation
+ CategoryInfo : NotSpecified: (VPN Users:ADGroup) [Get-ADGroupMember], ADException
+ FullyQualifiedErrorId : The operation completed successfully,Microsoft.ActiveDirectory.Management.Commands.GetADGroupMember
我还注意到,当转到 Active Directory 用户和计算机中的组时,我收到一条消息:
Active Directory 域服务
某些对象名称无法以用户友好的形式显示。如果对象来自外部域,并且该域无法翻译对象名称,则会发生这种情况。
有什么方法可以成功导出成员,无论一些名称格式是否正确等...?提前感谢您的帮助!
答案1
我发现使用 get-adgroup -properties 成员对于返回所有对象更可靠。
为了从不同域获取对象,我执行以下操作:
get-adgroup -properties member | select -expand member | get-adobject
由此获得对象的可分辨名称,这将告诉您要搜索哪个域,因此最后您应该得到类似这样的内容:
get-aduser $user -server $foundDomainDC