Часть 2. Администрирование Active Directory

В некой среде Active Directory мы используем объекты и атрибуты для представления пользователей, команд, ролей и устройств. В данной части мы собираемся подробно рассмотреть различные типы объектов и то как управлять ими при помощи разнообразных инструментов. По мере роста общего числа объектов в Active Directory нам необходим некий способ группирования похожих видов объектов воедино (на основе требований роли или работы). Это сделает более простым управление ими для инженеров. В некой среде Active Directory мы можем осуществлять это через группы пользователей или организационные единицы (organization units). Вы изучите оба этих метода на протяжении глав этой части.

В организации мы применяем политики и стандартизуем операции и состояние средств. Аналогично, мы пользуемся в среде Active Directory Групповыми политиками для стандартизации состояния объектов и собственно применения ими ресурсов. В этой части книги мы также пройдёмся более подробно по возможностям Групповых политик и управлении ими.

Данная часть содержит следующие главы:

{Прим. пер.: Желающим сразу переходить к практической работе с AD рекомендуем свой перевод 4 издания Книга рецептов автоматизации Windows Server при помощи PowerShell Томас Ли, Packt Publishing, июль 2021}

Глава 7. Управление объектами Active Directory

Я начинал свою карьеру в качестве веб разработчика. Я всё ещё помню свой самый первый рабочий день. Это была некая компания разработчик программного обеспечения с 20 инженерами. Я не знал ничего об Active Directory (AD) тогда, так как я был всецело сосредоточен но том чтобы стать инженером программного обеспечения. Поэтому я включил свой компьютер и набрал свои имя пользователя и пароль для входа в систему. Затем она сообщила мне что я обязан установить некий новый пароль. Я набрал самый сложный пароль, который только смог придумать. После этого я зарегистрировался и приступил к работе. Это было достаточно загруженное утро, я изучал новые вещи. После быстрого перерыва поздним полднем, я вернулся обратно к своему месту чтобы продолжить работу. Я набрал свой сложный пароль для входа в систему, однако получил отказ. Я попытался снова, но с тем же самым результатом. Я продолжил попытки и через несколько проб достиг знаменитого сообщения о блокировании учётной записи. Я проследовал в серверное помещение и рассказал о своей ситуации с учётной записью администратору. Он имел вид типичного администратора и открыл какой- то вид консоли на своём экране. Затем он раскрыл несколько папок в каком- то дереве папок и выбрал что- то с моим именем. После нескольких щелчков он открыл небольшой блок и попросил меня ввести новый пароль. Какая магия! Спустя несколько лет (когда я сменил профессию), я осознал, что это была консоль Microsoft управления пользователями и компьютерами Active Directory (Active Directory Users and Computers - ADUC - Microsoft Management Console - MMC), которая способна управлять объектами AD. Я уверен что вы испытали точно такое же волнение, когда впервые увидели эту консоль AD. Без таких инструментов, которые управляют объектами AD как визуальными составляющими инфраструктуры AD невозможно объяснить AD.

Как уже пояснялось в Главе 1, Основы Active Directory, все вещи, которые нам требуется представлять в AD создаются и сохраняются в качестве объектов. Это могут быть пользователи, компьютеры, принтеры или группы. Атрибуты применяются для описания таких объектов. Это аналогично тому способу, коим мы применяем характеристики для описания персоны или вещи. Имеются разнообразные инструменты и методы, которые мы можем применять для добавления, изменения или удаления объектов из имеющейся базы данных AD.

Управление объектами AD является одним из основных необходимых навыков для администраторов AD. Добавление/ удаление объектов и изменение атрибутов объекта это те задачи, с которыми инженеры работают более часто чем с прочими задачами администрирования AD. Если вы уже работаете с некой средой AD, вы могли уже применять те методы, которые описываются здесь для управления объектами AD, однако пройдя эту главу вы изучите различные инструменты и технологии, которые вы можете применять для улучшения своего опыта управления объектами AD.

В этой главе мы рассмотрим следующее:

  • Инструменты и методы для управления объектами AD

  • Создание, изменение и удаление объектов в AD

  • Поиск объектов в AD

Инструменты и методы для управления объектами

Существуют различные инструменты и методы, которые мы можем применять для управления объектами AD. Когда вы устанавливаете на сервер AD DS, это также делает возможным и доступ к этим инструментам управления. Также имеются и сторонние производители, которые также производят инструменты управления AD. Однако в этой главе я буду применять только встроенные инструменты Windows Server.

[Замечание]Замечание

Windows Admin Center (Центр администрирования Windows) является самым последним инструментом управления серверами Microsoft. Именно он выступает рекомендуемым инструментом управления начиная с Windows Server 2019. Это инструмент управления на основе веб- интерфейса. Его можно установить в неком отдельном сервере и он может применяться для управления множеством систем. Он также обладает возможностями управления AD, аналогичными его предшественнику, Диспетчеру сервера (Server Manager). Дополнительные сведения относительно Центра администрирования Windows по ссылке.

Центр администрирования Active Directory

ADUC MMC является наиболее часто применяемым инструментом для управления средами AD. Этот инструмент также был встроен в саму систему начиная с самых ранних версий AD и продолжает присутствовать в ней до самого последнего времени. Начиная с AD DS 2008 R2, Microsoft ввёл ADAC (Active Directory Administrative Center, Центр администрирования AD), который является встроенной технологией интерфейса PowerShell. Он предоставляет расширенный GUI, который можно применять для управления объектами AD неким действенным образом. В AD DS 2012 Microsoft ввёл Обзор истории (History View) PowerShell, который позволяет администраторам изучать связанные с AD команды PowerShell. Я не наблюдаю большинства инженером, применяющими этот интерфейс по сравнению с ADUC MMC. Этот инструмент поставляется совместно с ролью AD DS. После того как вы завершите установку этой роли, он станет доступным для работы без каких бы то ни было дополнительных настроек.

Для доступа к основной консоли ADAC вы можете набрать dsac.exe из командной строки PowerShell или в блоке Run:

 

Рисунок 7-1



Наш предыдущий снимок экрана показывает получаемый по умолчанию интерфейс ADAC и его компоненты, которые можно применять для управления объектами AD:

  • Планку хлебных крошек (Breadcrumb bar): Применяется для прямой навигации в различные контейнеры. Чтобы перейти к конкретному контейнеру, вам потребуется воспользоваться его отличительным названием. Также можно применять и прочие обходные пути поиска отличительного названия контейнера:

     

    Рисунок 7-2



    Применение варианта Manage позволяет нам добавлять узлы навигации в свою панель навигации. В целом, это аналогично добавлению закладок в определённые контейнеры.

  • Список управления: В этом разделе мы можем обнаружить некий перечень контейнеров, содержащихся в этих контейнерах объектов, результаты поиска объекта и многое другое. Отображаемые в этом разделе сведения будут изменяться на основе выбираемых в панели навигации вариантов.

  • Панель предварительного просмотра: Этот раздел отображает резюме для выбранных вами в Списке управления объектов. Такое резюме содержит определённые значения атрибутов, например, описание объекта, его название DNS и имя пользователя, а также время последнего изменения этого объекта:

     

    Рисунок 7-3



  • Панель навигации: Она аналогична панели навигации знакомого вам ADUC MMC. Однако с её помощью вы можете перемещаться в различные контейнеры в своём домене. Её также можно применять для обновления установленных уровней функциональности домена и леса и включения корзины AD. Применяя данную панель навигации мы можем добавлять в свой каталог такие объекты как User, Group, Organizational Unit или Computer:

     

    Рисунок 7-4



    Данная панель навигации также перечисляет варианты Global Search, которые можно применять для локализации объектов AD в вашем каталоге. После того как проведённый поиск вернёт вам некий объект, он также предоставит варианты для осуществления административных задач:

     

    Рисунок 7-5



  • Панель задач: Эта Панель задач перечисляет ниспадающим образом все административные задачи, ассоциируемые с выбранным вами объектом, например, перемещение объектов, сброс паролей, свойства и удаление. Этот список административных задач будет меняться на основании типа рассматриваемого объекта.

  • Панель истории PowerShell: ADAC построен на основе технологии командного интерфейса PowerShell, поэтому все выполняемые в ADAC задачи исполняются как команды PowerShell. В этой панели будут перечислены все выполнявшиеся команды PowerShell. Инженеры могут копировать эти команды и повторно их применять или дорабатывать их дальше для управления объектами AD через PowerShell напрямую. Это также позволяет нам находить команды, когда это требуется.

Когда вы открываете ADAC впервые, вы не обнаружите панель истории PowerShell в расширенном режиме, как это показано на снимке экрана ниже. Вам требуется кликнуть по блоку WINDOWS POWERSHELL HISTORY чтобы раскрыть его:

 

Рисунок 7-6



ADAC также делает возможным управление объектами и в прочих доменах. Его также можно открыть при помощи Server Manager | Tools | Active Directory Administrative Center. Когда домены имеют односторонние или двусторонние доверительные отношения между собой, это позволяет нам добавлять их в ту же самую консоль ADAC. Для этого вам требуется пройти в Планку хлебных крошек и кликнуть по Manage | Add Navigation Nodes, а затем кликнуть по Connect to other domains... в полученном окне:

 

Рисунок 7-7



Следующим преимуществом ADAC является окно расширенных свойств объекта. Если вы пользовались ранее ADUC MMC, вы уже можете знать, что для того чтобы просмотреть свойства объекта вам требуется преодолеть множество различных закладок. Однако с помощью окна расширенных свойств объекта ADAC мы можем просматривать множество сведений в единственном окне. Когда это потребуется, вы сможете легко перемещаться в различные разделы.

Используя то же самое окно, мы можем запускать относящиеся к этим объектам задачи. Но это не всё, оно позволяет нам также изменять сами разделы на странице свойств как мы пожелаем:

 

Рисунок 7-8



Возможности ADAC можно суммировать следующим образом:

  • Создание учётных записей пользователей (user ), групп (group) и компьютеров (computer), а также организационных элементов (OU, organizational unit)

  • Управление учётными записями пользователей, групп, компьютеров и OU

  • Удаление учётных записей пользователей, групп, компьютеров и OU

  • Управление объектами из прочих имеющих доверительные отношения доменов

  • Фильтрация объектов при помощи запросов

ADUC MMC

ADUC MMC является наиболее широко применяемым инструментом управления объектами AD. Этот инструмент доступен начиная с AD DS 2000 и, с годами, не изменялся существенно в отношении того как он выглядит и как в нём работать. Эта MMC поступает вместе с ролью AD DS и также может устанавливаться с помощью RSAT (Remote Server Administration Tools) в подключаемых к домену компьютерах.

Его можно открыть с помощью dsa.msc из приглашения PowerShell или из блока Run в меню Start:

 

Рисунок 7-9



Давайте пройдёмся по основным разделам этой консоли:

  • Полоса меню: Она содержит различные варианты меню. Большинство этих упомянутых в меню вариантов можно также исполнить при помощи иконок ниже полосы меню или в панели действий.

  • Дерево консоли: Данное дерево консоли перечисляет установленную структуры компонентов AD и помогает нам перемещаться по контейнерам и отыскивать объекты.

  • Панель управления: Отображает все объекты внутри выбранного в соответствующем дереве консоли контейнера. Она способна отображать различные Типы объектов, например User Group или Device. Её содержимое будет изменяться в зависимости от выбранного контейнера.

  • Панель действий: Панель Actions содержит основные административные задачи, относящиеся к выбранным объектам AD. например, когда выбран объект пользователя, панель действий перечислит административные задачи, такие как перемещение объекта, его удаление, сброс его пароля и запрет его учётной записи.

Здесь мы не будем рассматривать его функции, так как он является наиболее часто применяемым инструментом для любого администратора. Но я намерен перечислить некоторые из основных функциональностей:

  • Расширенные свойства: По умолчанию, MMC не будет перечислять все те свойства контейнеров и объектов, которые относятся к расширенному системному администрированию. Чтобы получить доступ к этим возможностям, вам требуется включить их при помощи View | Advanced Features.

  • Сохранённые запросы: Применяя эту MMC мы можем создавать индивидуальные запросы для фильтрации объектов AD и сохранять эти запросы для повторного исполнения в последующем. Это сберегает администраторам время чтобы не тратить время на навигацию по контейнерам в поисках объектов. Чтобы создать некий запрос, кликните правой кнопкой по Saved Queries и выберите New Query. В этом окне вы можете построить некий запрос при помощи возможности Define Query...:

     

    Рисунок 7-10



  • Доступ к различным доменам: Когда некий домен имеет доверительные взаимоотношения с прочими доменами, ту же самую консоль можно применять для доступа к ним и управления их объектами:

     

    Рисунок 7-11



Основные возможности ADUC MMC можно суммировать следующим образом:

  • Добавление, изменение и удаление пользователей (user ), групп (group), компьютеров (computer), а также организационных элементов (OU, organizational unit)

  • Управление объектами в различных доменах (требует двусторонних или односторонних доверительных отношений)

  • Построение запросов для фильтрации объектов

  • Поиск объектов в каталогах

  • Изменение свойств объектов

Администрирование объектов Active Directory посредством PowerShell

Введя язык сценариев PowerShell, Microsoft предоставил дополнительный контроль над функциями и действиями системы Windows. PowerShell также позволяет инженерам применять дополнительные функциональности, которые не могут применяться через GUI. AD DS поступает совместно с Active Directory Module for Windows PowerShell, который можно применять для управления AD DS, AD LDS (Active Directory Lightweight Directory Services) и объектами. Объектами AD DS всё ещё можно управлять через приглашение Командной строки, однако PowerShell предоставляет расширенный, централизованный контроль над компонентами и службами AD.

Любой сервер, в котором выполняются роли служб AD DS или AD LDS имеет по умолчанию модуль AD PowerShell. Его также можно включит в неком настольном компьютере или участвующем в домене сервере путём установки RSAT.

[Замечание]Замечание

Если инструменты RSAT устанавливаются на компьютеры с запущенным в них PowerShell 2, вам придётся запустить Import-Module ActiveDirectory перед тем как применять команды для управления AD.

Создание, изменение и удаление объектов в AD

Создание, модификация и удаление объектов являются наиболее часто выполняемыми задачами в среде AD. Применяя различные инструменты и методы, описанные в наших предыдущих разделах, мы можем осуществлять эти задачи. Каждый из инструментов и методов имеют свои собственные за и против. Сравнивая возможности GUI, имеющуюся сложность выполнения административных задач и то время, которое требуется на исполнение задач, вы можете выбрать именно тот инструмент, который будет лучшим для вас. Я рекомендую применять смесь инструментов, так как ни один из инструментов не хорош для всех задач администрирования.

Создание объектов в AD

Абсолютно все типы объектов имеют свой собственный набор атрибутов. Когда вы создаёте объекты, вам требуется предоставлять для этих атрибутов значения. Некоторые из них обязательны, а некоторые нет. На основании опыта работы и предпочтений компании, в установленные типы объектов могут потребоваться добавления некоторых индивидуальных атрибутов.

Создание объектов пользователя

Для создания некого объекта пользователя в AD мы можем воспользоваться cmdlet PowerShell New-ADUser. Вы можете просмотреть полный синтаксис данной команды совместно с допустимыми типами данных, применив такую команду:


Get-Command New-ADUser -Syntax
		

Чтобы создать некую новую учётную запись пользователя при помощи PowerShell, минимальным значением, которое вам потребуется передать будет -Name. Это создаст некую отключённую учётную запись пользователя и вы сможете позднее определять значения прочих атрибутов.

Вот некий образец, который может быть использован для создания какой- то учётной записи пользователя:


New-ADUser -Name "Talib Idris" -GivenName "Talib" -Surname "Idris" -SamAccountName "tidris" -UserPrincipalName "tidris@rebeladmin.com" -Path "OU=Users,OU=Europe,DC=rebeladmin,DC=com" -AccountPassword(Read-Host -AsSecureString "Type Password for User") -Enabled $true
		

Данная команда обладает следующими параметрами:

  • -Name: Этот параметр определяет значение полного имени.

  • -GivenName: Данный параметр задаёт первое имя.

  • -Surname: Этот параметр определяет фамилию.

  • -SamAccountName: Параметр, определяющий регистрационное имя пользователя.

  • -UserPrincipalName: Данный параметр задаёт UPN (User Principal Name, Основное имя пользователя) для значения учётной записи пользователя.

  • -Path: Определяет значение пути OU. Устанавливаемым по умолчанию местоположением является CN=Users,DC=rebeladmin,DC=com. Когда значение -Path не задано, будет создан соответствующий объект в установленном по умолчанию контейнере.

  • -AccountPassword: Позволяет для исполнителя ввести некий пароль для создаваемого пользователя и сама система преобразует его в подходящий тип данных.

  • -Enabled: Определяет будет ли состояние учётной записи этого пользователя включено или отключено.

    [Совет]Совет

    Вы можете создать некую учётную запись пользователя с минимальным числом атрибутов, например, с именем и UPN. Позднее вы можете задать некий пароль и включить эту учётную запись. Учётная запись пользователя не может быть включена без пароля. Для задания пароля вы можете применять cmdlet Set-ADAccountPassword -Identity, а для включения учётной записи вы можете воспользоваться cmdlet -ом Enable-ADAccount -Identity.

Вместо того чтобы выполнять множество команд при создании большого числа объектов, мы можем создать какой- то файл CSV (Comma-Separated Values, с разделяемыми запятой значениями), который содержит сведения для атрибутов и воспользоваться им для создания учётных записей одним махом.

Для демонстрации я воспользуюсь следующим файлом CSV:

 

Рисунок 7-12



Я воспользовался сведениями для некоторых атрибутов через такой файл CSV, а некоторые общие значения будут переданы посредством следующего сценария:


Import-Csv "C:\ADUsers.csv" | ForEach-Object {
$upn = $_.SamAccountName + "@rebeladmin.com" 
New-ADUser -Name $_.Name `
 -GivenName $_."GivenName" `
 -Surname $_."Surname" `
 -SamAccountName $_."samAccountName" `
 -UserPrincipalName $upn `
 -Path $_."Path" `
 -AccountPassword (ConvertTo-SecureString "Pa$$w0rd" -AsPlainText -force) -Enabled $true
}
		

В этом сценарии применяется cmdlet Import-Csv для импорта того файла CSV, который я создал на своём предыдущем шагу. Я также определил значение UPN, -UserPrincipalName, воспользовавшись $upn= $_.SamAccountName + "@rebeladmin.com". В самом конце я задал некий общий пароль для всех создаваемых учётных записей при помощи -AccountPassword (ConvertToSecureString "Toronto@1234" -AsPlainText -force).

Пройдя этот раздел, мы теперь знаем как создавать объекты пользователей при помощи PowerShell. В своём следующем разделе мы намерены изучить как создавать объекты компьютера в неком AD при помощи PowerShell и инструментов GUI.

Создание объектов компьютера

Когда некий компьютер или сервер- участник присоединяются к какому- то домену, это создаёт некий объект компьютера в AD.

Такой объект компьютера может быть создан до его добавления в домен. Это не добавит данное устройство в домен, однако этим можно пользоваться с присоединением отключённого домена и присоединением к домену RODC.

Для создания объекта компьютера, мы можем воспользоваться cmdlet -ом New-ADComputer. Для просмотра полного синтаксиса этой команды воспользуйтесь следующим:


Get-Command New-ADComputer -Syntax
		

Минимальным атрибутом, при помощи которого вы можете создать некий объект компьютера является -Name:


New-ADComputer -Name "REBEL-PC-01" -SamAccountName "REBEL-PC-01" -Path "OU=Computers,OU=Europe,DC=rebeladmin,DC=com"
		

В нашем предыдущем примере выполненная команда создаст объект компьютера REBEL-PC01 в OU=Computers,OU=Europe,DC=rebeladmin,DC=com OU. Если вы не определяете такой путь, будет создан соответствующий объект в установленном по умолчанию контейнере компьютера, CN=Computers, DC=rebeladmin, DC=com.

Нам очень редко требуется массовое создание объектов компьютера. Если это потребуется, мы можем сделать это при помощи метода CSV, аналогичного созданию объектов пользователя.

[Замечание]Замечание

Я не намерен здесь обсуждать администрирование объектов групп, так как оно подробно рассматривается в Главе 8, Управление пользователями, группами и устройствами.

Объекты User и Computer также можно создать с помощью ADAC или ADUC. В таком случае нам придётся следовать за мастером для задания значений и атрибутов:

 

Рисунок 7-13



Наш следующий снимок экрана показывает мастер создания объекта Computer с помощью ADUC:

 

Рисунок 7-14



В этом разделе мы рассмотрели как создавать объекты компьютера при помощи различных инструментов (ADAC, ADUC и PowerShell). Когда дело доходит до управления объектами AD, нам также приходится время от времени изменять атрибуты объекта. В своём следующем разделе мы намерены рассмотреть изменение объекта AD с помощью PowerShell.

Изменение объектов в AD

Когда мы создаём объекты, мы определяем значения для атрибутов. После того как мы создали объекты, могут возникать ситуации, при которых нам потребуется изменять значения этих атрибутов или добавлять значения пустующих атрибутов.

Для изменения и добавления значений атрибутов мы можем использовать cmdlet Set-ADUser для уже имеющихся объектов AD пользователя:


Set-ADUser tidris -OfficePhone "0912291120" -City "London"
		

В своём предыдущем образце команды мы добавили значения -OfficePhone и -City для своего пользователя tidris.

Может случиться, что нам потребуется изменить имеющееся значение какого- то


Set-ADUser tidris -OfficePhone "0112291120"
		

В своей предыдущей команде я заменил некое имеющееся значение новым.

В своих вышеупомянутых командах я задал точную учётную запись конкретного пользователя, но это не практично, когда вам нужно сделать это для большого числа учётных записей. Для выполнения этого нам требуется сочетать cmdlet Set-ADUser c cmdlet Get-ADUser. Это позволит нам вначале выполнить поиск объектов, а затем доставить в них изменения:


Get-ADUser -Filter * -SearchBase 'OU=Users,OU=Europe,DC=rebeladmin,DC=com' | Set-ADUser -City "London"
		

В своей предыдущей команде мы нашли все объекты пользователей, расположенные в OU=Users,OU=Europe,DC=rebeladmin,DC=com и установили значением City London.


Get-ADUser -Filter {City -like "London"} | Set-ADUser -City "Kingston"
		

В предыдущем примере я нашёл всех тех пользователей в своём каталоге, которые имеют определённым значением London для City и изменил его на Kingston.

Сочетание запроса поиска с изменением объекта экономит кучу времени ручной работы и не является чем- то что мы можем просто делать при помощи инструментов GUI.

Значения объектов компьютера также можно добавлять/ изменять аналогичным образом. Для этого нам требуется применять cmdlet Set-ADComputer:


Set-ADComputer REBEL-PC-01 -Description "Sales Computer"
		

Наша предыдущая команда устанавливает значение объекта Description для компьютера с названием REBEL-PC-01.

Этот cmdlet также можно сочетать с запросом поиска при помощи cmdlet Get-ADComputer:


Get-ADComputer -Filter {Name -like "REBEL-PC-*"} | Set-ADComputer -Location "M35 Building"
		

В нашей предыдущей команде выполнялся поиск компьютеров с названием REBEL-PC и устанавливалось значение их местоположения M35 Building.

В ADAC и ADUC GUI имеется по- существу лишь двойной клик мышью и изменение текущих значений атрибутов. Там также допускается множественный выбор объектов и изменение конкретного значения атрибута одним махом.

Удаление объектов в AD

Для удаления некого объекта пользователя AD мы можем воспользоваться cmdlet -ом Remove-ADUser. Полные сведения относительно его синтаксиса можно выдать такой командой:


Get-Command Remove-ADUser -Syntax
		

При использовании этого cmdlet, нам требуется применять параметр -Identity для задания необходимой учётной записи. Мы можем применять отличительное название, GUI, SID или соответствующее значение SamAccountName для идентификации необходимой учётной записи. Когда это среда LDS, нам также требуется задать параметр раздела этого объекта:


Remove-ADUser -Identity "dzhang"
		

В своей предыдущей команде мы удалили объект пользователя AD с названием dzhang из текущего каталога. Перед удалением этого объекта будет выдан запрос на подтверждение операции.

Данный cmdlet также можно сочетать с поисковым запросом для поиска необходимого объекта перед его удалением:


Get-ADUser -Filter {Name -like "Test1*"} | Remove-ADUser
		

В своей предыдущей команде мы отыскали того пользователя, у которого имя начинается с Test1 во всём каталоге и затем удалили его.

Cmdlet Remove-ADComputer можно применять для удаления объектов компьютеров из текущего каталога:


Remove-ADComputer -Identity "REBEL-PC-01"
		

Наша предыдущая команда удалила объект компьютера REBEL-PC-01 из текущего каталога. Мы также можем сочетать её с запросом поиска:


Get-ADComputer -Filter * -SearchBase 'OU=Computers,OU=Europe,DC=rebeladmin,DC=com' | Remove-ADComputer
		

В нашей предыдущей команде мы отыскали объекты компьютеров в определённом OU и затем удалили найденные из общего каталога.

инструменты ADAC и ADUC также можно использовать для удаления объектов из некого каталога. Их также можно применять с функцией поиска для определения местоположения особых объектов с последующим их удалением.

Поиск объектов в AD

AD содержит в своей базе данных различные объекты. Наиболее распространённый способ определение местоположения некого объекта в AD состоит в применении ADAC или ADUC и просмотре всех контейнеров. По мере роста общего числа объектов, становится достаточно сложным определять локализацию объектов в AD. В данном разделе мы намерены рассмотреть более действенные способы нахождения местоположения объектов в некой среде AD.

ADAC обладает расширенными возможностями запросов и фильтрации. Так как он применяется через GUI, это помогает нам делать выборку результатов по сравнению в PowerShell.

В его списке управления имеется блок фильтрации в самом верхнем разделе (после того как вы кликните по соответствующему названию домена в его панели навигации). Его представление не изменяется по мере того как вы перемещаетесь по своим контейнерам. Это помогает вам быстро фильтровать необходимые для отображения сведения в соответствующем списке управления. Однако, он не выполняет поиск объектов по множеству уровней (для дочерних контейнеров):

 

Рисунок 7-15



ADAC обладает функциональностью с названием Global Search, которую можно применять для поисков объектов во всём каталоге. Это делает возможным обычные текстовый поиск или расширенные запросы на основании LDAP (Lightweight Directory Access Protocol):

 

Рисунок 7-16



Давайте теперь посмотрим как выполнять поиски на основании LDAP. Данный метод также позволяет нам задать Scope (сферу) самого поиска:

 

Рисунок 7-17



[Замечание]Замечание

При Normal (обычном) поиске вы можете применять текстовые шаблоны. Это может быть полное или частичное значение. При LDAP поиске нам требуется применять точный синтаксис. Применяя вариант Convert to LDAP, мы можем вырабатывать некий LDAP запрос из поиска Normal. Кроме того, применяя LDAP syntax help вы можете получать сведения об установленном синтаксисе LDAP и вариантах его применения.

Данная функция Global Search также доступна для доступа со страницы Overview.

В ADUC возможности поиска объектов крайне ограничены по сравнению с ADAC и PowerShell. Он имеет возможность Find..., которая позволяет нам определять местоположение объектов в имеющемся каталоге. К ней можно получать доступ правым кликом мыши по любому контейнеру:

 

Рисунок 7-18



Это позволяет нам выполнять текстовый поиск, а также некий расширенный поиск на основе атрибутов и их значений. Данный вариант также позволяет нам задавать область поиска:

 

Рисунок 7-19



Инструменты ADUC и ADAC выступают самыми простыми способами поиска некого объекта в AD. Метод же PowerShell не просто позволяет нам отыскивать объекты, но также и сочетать поиск с дополнительными задачами, такими как экспорт файлов CSV для результатов поиска, изменение значений объекта, а также перемещение и удаление объектов AD. В своём следующем разделе мы намерены изучить как искать объекты с помощью PowerShell.

Поиск объектов при помощи PowerShell

В своём предыдущем разделе мы рассмотрели cmdlet Get-ADUser и Get-ADComputer и то как их можно применять с прочими командами для фильтрации объектов из AD. Их также можно применять для выборки определённых значений атрибутов из отфильтрованных объектов:


Get-ADUser -Identity user1 -Properties *
		

Наша предыдущая команда перечислит все те атрибуты и значения, которые ассоциированы с user1. Это поможет нам находить точные названия атрибутов и общие значения, которые мы можем применять для последующей фильтрации.

Допустим, мне требуется узнать значения для Name, UserPrincipalName и Modified всех своих пользователей. Следующая команда создаст некую таблицу с соответствующими атрибутами и их значениями:


Get-ADUser -Filter * -Properties Name,UserPrincipalName,Modified | ft Name,UserPrincipalName,Modified
		

Я могу наблюдать в данном списке некие учётные записи, которые являются учётными записями служб и администраторов. Я желаю видеть лишь учётные записи из офиса в Kingston:


Get-ADUser -Filter {City -like "Kingston"} -Properties Name,UserPrincipalName,Modified | ft Name,UserPrincipalName,Modified
		

Наша предыдущая команда фильтрует пользователей дополнительно при помощи значения для City.

Теперь у меня есть необходимый список сведений и я бы хотел экспортировать его в некий файл CSV для последующего применения таким образом:


Get-ADUser -Filter {City -like "Kingston"} -Properties Name,UserPrincipalName,Modified | select-object Name,UserPrincipalName,Modified | Export-csv -path C:\ADUSerList.csv
		

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

Для поиска объектов на основе значения учётной записи и состояния пароля можно применять cmdlet Search-ADAccount. Полный синтаксис этого cmdlet можно получить с помощью такой команды:


Get-Command Search-ADAccount -Syntax
		

В качестве примера, ею можно воспользоваться для фильтрации блокированных учётных записей:


Search-ADAccount -LockedOut | FT Name,UserPrincipalName
		

Эта команда перечислит все блокированные учётные записи с их именами и UPN.

В отличии от графических инструментов, запросы PowerShell могут строиться для фильтрации точных объектов и сведений из AD. {Прим. пер.: дополнительные сведения относительно применения PowerShell вы можете найти в наших переводах PowerShell и Python сообща - настроены на цифровые расследования Чета Хосмера (Октябрь 2018, Apress) и Книги рецептов Powershell Core 6.2 Жан-Эндрика Питерса (Апрель 2019, Packt Publisher).}

Выводы

Для управления объектами AD существует множество разнообразных инструментов. В этой главе мы рассмотрели построенный Microsoft инструменты управления объектами AD. Абсолютно все инструменты имеют свои собственные свойства и мы изучили как применять их для действенного добавления, изменения и удаления объектов AD. Мы также изучили как мы можем применять различные инструменты и технологии для поиска определённых объектов AD и значений атрибутов.

В своей следующей главе мы погрузимся глубже в объекты и атрибуты AD, оценим различные типы объектов и их роли в среде AD.