Экспорт адреса электронной почты всех пользователей в группе безопасности
Я пытаюсь написать сценарий, в котором я могу получить адрес электронной почты всех пользователей в группе безопасности active directory.
Что у меня есть до сих пор:
$Groups = Get-ADGroup -filter {Name -like "VIPEmail" } | Select-Object Name
ForEach ($Group in $Groups) {
Get-ADGroupMember -identity $($group.name) -recursive | Select-Object samaccountname
}
Очевидно, что это вернет только samaccountname, что он и делает. Я заменяю samaccountname на EmailAddress, и он ничего не делает.
4 ответов:
Чтобы сохранить исходное форматирование, чтобы вы могли видеть, где вы ошиблись:
$Groups = Get-ADGroup -filter {Name -like "09-Admins" } | Select-Object Name ForEach ($Group in $Groups) { Get-ADGroupMember -identity $($group.name) -recursive | Get-ADUser -Properties mail | Select-Object mail }Проблема заключается в том, что вы пытаетесь прочитать свойство, которое не имеет возвращаемого типа Get-ADGroupMember (Microsoft.ActiveDirectory.Управление.Адпринципал). Вам нужно передать это возвращение в Get-ADuser и указать, что вы хотите, чтобы оно вытянуло свойство emailaddress. Get-ADUser не будет извлекать большинство свойств пользователя по умолчанию, поэтому вам нужно указать любые дополнительные свойства, которые вы хотели бы извлеките (или просто выберите все из них с помощью " - Properties *", но это довольно небрежно).
Мьолинор опередил меня с ответом, но я решил, что стоит немного уточнить его ответ.
Что-то вроде этого: '
Get-ADGroup -filter {name -like 'VIPEmail'} | Get-ADGroupMember -Recursive | Get-ADUser -Properties Mail | select -ExpandProperty Mail
Я бы добавил уникальный. Поэтому, когда пользователь находится в нескольких группах, отображается только одно электронное письмо:
Get-ADGroup -filter {Name -like "RO*" } | Get-ADGroupMember -Recursive | select -Unique| get-adUser -Properties mail | select -ExpandProperty Mail
Get-ADGroupMember GroupName | get-aduser -properties mail | select mail | Sort-Object mailЕсли у вас есть вложенные группы, вы можете изменить вышеизложенное на:
Get-ADGroupMember -Recursive GroupName | get-aduser -properties mail | select mail | Sort-Object mail
Comments