Мне было поручено экспортировать членов нескольких групп 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 Users and Computers я получаю сообщение:
Доменные службы Active Directory
Некоторые имена объектов не могут быть отображены в удобной для пользователя форме. Это может произойти, если объект находится во внешнем домене и этот домен недоступен для перевода имени объекта.
Есть ли способ успешно экспортировать участников, независимо от того, правильно ли отформатированы некоторые имена и т. Д.? Заранее спасибо за помощь!
Я обнаружил, что использование члена get-adgroup -properties более надежно для возврата всех объектов.
Чтобы получить объекты из разных доменов, я делаю следующее:
get-adgroup -properties member | select -expand member | get-adobject
Отсюда вы получите отличительное имя объекта, это подскажет вам, в каком домене искать, поэтому в итоге у вас должно получиться что-то вроде:
get-aduser $user -server $foundDomainDC