Get-ADUser - один из самых часто используемых PowerShell-командлетов при работе с active directory. С его помощью можно получать информацию о пользователях:логин и имя
отдел и должность
компанию
состояние учетной записи
дату истечения пароля
дополнительные AD-атрибуты
Для работы нужен модуль:
ActiveDirectory
На контроллерах домена он обычно уже установлен. На рабочих станциях и рядовых серверах его можно добавить через RSAT.
▪️ Проверить наличие модуля:
Get-Module -ListAvailable ActiveDirectory
▪️ Вывести всех пользователей домена:
Get-ADUser -Filter *
Но по умолчанию
Get-ADUser возвращает только базовый набор свойств.▪️ Если нужны дополнительные атрибуты, используем
-Properties. Например, посмотреть все свойства пользователя:
Get-ADUser -Identity "petrov" -Properties *
Вывести только нужные поля:
Get-ADUser -Identity "petrov" `
-Properties Company,Department,Title,Mail |
Select-Object Name,Company,Department,Title,Mail
▪️ Один из самых полезных вариантов - фильтрация пользователей. Например, найти активные учетные записи без заполненного email:
Get-ADUser -Filter {
Enabled -eq $true -and Mail -notlike "*"
} -Properties Mail |
Select-Object Name,SamAccountName,Mail
Найти пользователей с истекшим паролем:
Get-ADUser -Filter {
Enabled -eq $true
} -Properties PasswordExpired |
Where-Object PasswordExpired |
Select-Object Name,SamAccountName,PasswordExpired
Найти пользователей определенного отдела:
Get-ADUser -Filter {
Department -eq "IT"
} -Properties Department,Title |
Select-Object Name,Department,Title
▪️ Можно сразу выгрузить результат в CSV:
Get-ADUser -Filter * `
-Properties Mail,Department,Title |
Select-Object Name,SamAccountName,Mail,Department,Title |
Export-Csv C:\Temp\ad-users.csv -NoTypeInformation -Encoding UTF8
#powershell #activedirectory
🧑💻 NetworkAdmin