Работа с пользователями Active Directory в Powershell

Тематические термины: Active Directory , Powershell .

Для работы с пользователями AD DS средствами Powershell необходимо загрузить соответствующий модуль командой:

> Import-Module ActiveDirectory

Просмотр

Информация о пользователях

1. Список пользователей домена:

> Get-ADUser -filter * | Select Name, SamAccountName

2. Простая информация о пользователе:

> Get-ADUser remontka

* где remontka — логин пользователя в AD DS, для которого смотрим атрибуты.

3. Как посмотреть все атрибуты пользователя:

> Get-ADUser remontka -Properties *

4. Список пользователей в определенном организационном юните:

> Get-ADUser -filter * -SearchBase «OU=Пользователи,DC=remontka,DC=local»

5. Поиск пользователей с определенным значением атрибута:

> Get-ADUser -filter * -Properties title | where { ($_.title -eq «Инженер») } | Select Name

* в данном примере мы выгружаем пользователей, должность которых «Инженер».

6. Исключить из поиска и показа определенных пользователей.

а) Способ 1. Использовать фильтр:

> Get-ADUser -filter { Name -notlike «Мартынов Мартын Мартынович» -and Name -notlike «Макаров Макар Макарович» }

б) Способ 2. С помощью Where и массива:

> $ExcludeUsers = @(«Мартынов Мартын Мартынович», «Макаров Макар Макарович»)

> Get-ADUser -filter * | Where { $ExcludeUsers -notcontains $_.Name }

* обе команды выведут всех пользователей, кроме тех, что перечислены в фильтре.

Выгрузка пользователей в CSV (для просмотра в текстовом формате или Excel)

Выгрузку делаем при помощи командлета Export-csv .

1. Выгрузка всех данных о всех пользователях

Get-ADUser -filter * -Properties * | Export-csv -path C:TempADUsers.csv

* C:TempADUsers.csv — путь к выгружаемому файлу.

2. Выгрузка только номеров телефонов и адресов электронной почты для пользователей, находящихся в определенном контейнере:

Get-ADUser -filter * -SearchBase «OU=Пользователи,DC=remontka,DC=local» -Properties mobile, mail | Select Name, mobile, mail | Export-csv -Encoding UTF8 -Delimiter «;» -path C:TempUserPhoneAndEmail.csv

* обратите внимание, что мы в данной выгрузки используем кодировку UTF-8 и в качестве разделителя знак ; .

Список групп пользователя

Get-AdUser remontka -Properties memberof | Select memberof -expandproperty memberof

* где expandproperty позволяет просмотреть значение коллекций в удобочитаемом виде.

Редактирование

Редактирование информации выполняется с помощью командлета Set-ADUser и передачи в качестве параметра имя атрибута с новым значением. Рассмотрим несколько примеров изменения информации с помощью данной команды.

Редактирование домашней страницы пользователя

> Set-ADUser remontka -HomePage «remontka.com»

* в данном примере редактируется домашняя страница для пользователя с логином remontka .

Редактирование телефона

> Get-ADUser -Filter remontka -Properties OfficePhone | % { Set-ADUser $_ -OfficePhone «+7(812)999-99-99» }

* редактируем атрибут OfficePhone . Последний не выводится командой по умолчанию, поэтому мы указываем его в параметре -Properties .

Редактирование мобильного телефона по ФИО пользователя

> Get-ADUser -Filter {name -eq ‘Иванов Иван Иванович’} -Properties mobile | % { Set-ADUser $_ -mobile «+7(999)999-99-99» }

* сначала находим пользователя по ФИО, затем редактируем атрибут mobile .

Редактирование комнаты сотрудника

> Set-ADUser remontka -Office «Санкт-Петербург, Невский проспект»

* в данном примере редактируется местонахождение сотрудника с именем входа remontka .

Добавление пользователя в группу

> Add-ADGroupMember -Identity «Группа в AD» -Member master

* с помощью данной команды мы добавим пользователя master в группу Группа в AD .

Задать подразделение, в котором работает пользователь

Редактируем атрибут department :

> Set-ADUser remontka -department «Отдел сопровождения железнодорожных молекул»

* в данном примере мы указали, что пользователь remontka работает в «Отделе сопровождения железнодорожных молекул».

Читайте также

Работа с группами пользователей Active Directory с помощью Powershell

EnglishRussianUkrainian