Powershell атрибуты пользователя. Поиск и изменение.

Powershell атрибуты пользователя.

Одним из часто встречающихся действий, выполняемых системными администраторами, является работа с учетными записями пользователей. Давайте посмотрим, как можно быстро находить и изменять учетные записи пользователей(доменных и локальных) с помощью Powershell.

Поиск пользователей по заданным критериям. Доменные пользователи.

Для поиска доменных пользователей используется командлет Get-ADUser. Данный командлет входит в модуль ActiveDirectory. Он доступен на серверах с установленной ролью AD DS или при установке оснастки RSAT для удаленного администрирования серверов. Модуль, также, может быть установлен и отдельно из репозитория Powershell.

Чтобы найти пользователя с определенными свойствами, нужно знать какие атрибуты у него есть и как они называются в Powershell. В этом нам поможет команда:

 В данном примере производится поиск пользователя с именем, заданным в переменной $Name. Вы можете указать имя пользователя явно, только лучше использовать оператор -like

Учтите, что под именем здесь имеется ввиду полное имя пользователя.

При поиске, также, можно указать сервер(контроллер домена) и учетные данные пользователя домена, которые будут использоваться для получения сведений о пользователе.

Еще:  Server Core 2016, установка и настройка.

Давайте посмотрим вывод команды:

Powershell атрибуты пользователя

Как видно, свойств довольно много, и по ним можно производить поиск, а также менять эти свойства. Для того, чтобы найти пользователя по любому свойству, введите его вместо(или вместе) со свойством Name, по которому мы искали пользователя.

Для того, чтобы изменить атрибуты пользователя используется командлет Set-ADUser.  

Например, чтобы изменить название улицы, указанное в свойствах пользователя Семенов, можно сразу передать результат выполнения команды Get-ADUser командлету Set-ADUser:

В результате выполнения, получим желаемый результат в свойствах пользователя:

Powershell атрибуты пользователя

Подробнее о модуле Active Directory можно прочитать здесь: https://docs.microsoft.com/en-us/previous-versions/windows/it-pro/windows-server-2008-R2-and-2008/ee617195(v=technet.10)

Powershell атрибуты пользователя. Локальные пользователи.

Для работы с учетными записями локальных пользователей используется модуль Local Accounts, доступный в репозитории Powershell Gallery(как установить модули описано здесь).

Найти пользователя можно с помощью командлета Get-LocalUser.

Синтаксис отличается от Get-ADUser. По умолчанию, без параметров Get-LocalUser выводит список всех локальных пользователей на компьютере:

Powershell атрибуты пользователя

Для получения информации по конкретному пользователю, нужно указать его параметры. Чтобы посмотреть доступные параметры используем командлет Get-Member:

Powershell атрибуты пользователя

Как можно видеть, параметров у пользователя намного меньше.

Еще:  CMD Управление пользователями в Windows. Net user

И еще, здесь есть отличие от Get-ADUser, параметр Name, который в Get-ADUser обозначал полное имя пользователя, в Get-LocalUser означает логин пользователя. Убедиться в этом можно на примере конкретного пользователя. Чтобы найти пользователя по атрибуту, отличному от его логина(Name) и SID, нужно задействовать командлет Where-Object:

Powershell атрибуты пользователя

Изменение атрибутов производится командлетом Set-LocalUser. Например, для изменения срока действия учетной записи с 31.08.2019 на 31.12.2020 команда выглядит так:

Аналогично меняются и другие атрибуты(Description, Fullname и т.д.)

И еще одно замечание. Если доменного пользователя заставить сменить пароль перед первым входом мы можем просто с помощью параметра -ChangePasswordAtLogon, то с локальными пользователями все не так. Вариант, все же есть, и он описан в этой статье.

Данные командлеты(особенно при использовании в скриптах) очень облегчат жизнь системному администратору, если приходится часто или в большом количестве менять атрибуты пользователей. Вы можете создать(получить) список пользователей и атрибуты, которые нужно изменить и «скормив» его скрипту, быстро получить требуемый результат.

Вот такая коротенькая памятка по поиску и изменению атрибутов пользователей получилась. А если вы хотите посмотреть что назапускали наши пользователи, прочитайте статью о том как узнать владельца процесса с помощью Powershell.

Еще статьи по использованию Powershell в администрировании можно посмотреть по тегу Powershell.

 

Оставьте комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Прокрутить вверх