Как подготовить список пользователей из Active Directory
- Перейдите на сервер с пользователями Active Directory.
- Откройте PowerShell и выполните команду для формирования списка в csv-файл:
Get-ADUser -LDAPFilter '(!userAccountControl:1.2.840.113556.1.4.803:=2)' -properties * | Select-Object -Property @{N='Recipient';E={$_.Mail}},@{N='LogonName';E={$_.UserPrincipalName}} | Export-csv -path c:\users.csv -encoding Unicode -NoTypeInformation
-
Добавьте в команду фильтр
Where-Object
передSelect-Object
, если нужно исключить пользователей с определенным префиксом. Например, чтобы исключить учётные записи Exchange Server:Get-ADUser -LDAPFilter '(!userAccountControl:1.2.840.113556.1.4.803:=2)' -properties * | Where-Object {$_.userPrincipalName -notlike 'HealthMailbox*'} | Select-Object -Property @{N='Recipient';E={$_.Mail}},@{N='LogonName';E={$_.UserPrincipalName}} | Export-csv -path c:\users.csv -encoding Unicode -NoTypeInformation
- Откройте сформированный csv-файл в редакторе:
- удалите пустые строки — файл не должен их содержать;
- при необходимости заполните пропущенные значения вручную:
- в столбце «Recipient» укажите почту или номер телефона без «+»;
- в столбце «LogonName» укажите логин пользователя в одном из форматов: «login», «login@domain», «domain\login».
- сохраните файл.
Пример финального csv-файла, сформированного по инструкции, будет выглядеть следующим образом:
Recipient,LogonName
user1@example.ru,user1@example.ru
user2@example.ru,user2@example.ru
Важно: в файле каждая строка должна быть разделена запятой без пробела.