Управление корзиной. Новый сервис в Active Directory::Журнал СА 8.2009
www.samag.ru
     
Поиск   
              
 www.samag.ru    Web  0 товаров , сумма 0 руб.
E-mail
Пароль  
 Запомнить меня
Регистрация | Забыли пароль?
Журнал "Системный администратор"
Журнал «БИТ»
Подписка
Архив номеров
Где купить
Наука и технологии
Авторам
Рекламодателям
Контакты
   

  Опросы
  Статьи

Дата-центры  

Дата-центры: есть ли опасность утечки данных?

Российские компании уже несколько лет испытывают дефицит вычислительных мощностей. Рост числа проектов,

 Читать далее...

Событие  

В банке рассола ждет сисадмина с полей фрактал-кукумбер

Читайте впечатления о слете ДСА 2024, рассказанные волонтером и участником слета

 Читать далее...

Организация бесперебойной работы  

Бесперебойная работа ИТ-инфраструктуры в режиме 24/7 Как обеспечить ее в нынешних условиях?

Год назад ИТ-компания «Крок» провела исследование «Ключевые тренды сервисного рынка 2023». Результаты

 Читать далее...

Книжная полка  

Читайте и познавайте мир технологий!

Издательство «БХВ» продолжает радовать выпуском интересных и полезных, к тому же прекрасно

 Читать далее...

СУБД PostgreSQL  

СУБД Postgres Pro

Сертификация по новым требованиям ФСТЭК и роль администратора без доступа к данным

 Читать далее...

Критическая инфраструктура  

КИИ для оператора связи. Готовы ли компании к повышению уровня кибербезопасности?

Похоже, что провайдеры и операторы связи начали забывать о требованиях законодательства

 Читать далее...

Архитектура ПО  

Архитектурные метрики. Качество архитектуры и способность системы к эволюционированию

Обычно соответствие программного продукта требованиям мы проверяем через скоуп вполне себе понятных

 Читать далее...

Как хорошо вы это знаете  

Что вам известно о разработках компании ARinteg?

Компания ARinteg (ООО «АРинтег») – системный интегратор на российском рынке ИБ –

 Читать далее...

Графические редакторы  

Рисование абстрактных гор в стиле Paper Cut

Векторный графический редактор Inkscape – яркий представитель той прослойки open source, с

 Читать далее...

День сисадмина  

Учите матчасть! Или как стать системным администратором

Лето – время не только отпусков, но и хорошая возможность определиться с профессией

 Читать далее...

День сисадмина  

Живой айтишник – это всегда движение. Остановка смерти подобна

Наши авторы рассказывают о своем опыте и дают советы начинающим системным администраторам.

 Читать далее...

Виртуализация  

Рынок решений для виртуализации

По данным «Обзора российского рынка инфраструктурного ПО и перспектив его развития», сделанного

 Читать далее...

Книжная полка  

Как стать креативным и востребованным

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

 Читать далее...

Книжная полка  

От создания сайтов до разработки и реализации API

В издательстве «БХВ» недавно вышли книги, которые будут интересны системным администраторам, создателям

 Читать далее...

1001 и 1 книга  
19.03.2018г.
Просмотров: 6227
Комментарии: 0
Машинное обучение с использованием библиотеки Н2О

 Читать далее...

12.03.2018г.
Просмотров: 6933
Комментарии: 0
Особенности киберпреступлений в России: инструменты нападения и защита информации

 Читать далее...

12.03.2018г.
Просмотров: 4217
Комментарии: 0
Глубокое обучение с точки зрения практика

 Читать далее...

12.03.2018г.
Просмотров: 3009
Комментарии: 0
Изучаем pandas

 Читать далее...

12.03.2018г.
Просмотров: 3807
Комментарии: 0
Программирование на языке Rust (Цветное издание)

 Читать далее...

19.12.2017г.
Просмотров: 3823
Комментарии: 0
Глубокое обучение

 Читать далее...

19.12.2017г.
Просмотров: 6317
Комментарии: 0
Анализ социальных медиа на Python

 Читать далее...

19.12.2017г.
Просмотров: 3172
Комментарии: 0
Основы блокчейна

 Читать далее...

19.12.2017г.
Просмотров: 3462
Комментарии: 0
Java 9. Полный обзор нововведений

 Читать далее...

16.02.2017г.
Просмотров: 7279
Комментарии: 0
Опоздавших не бывает, или книга о стеке

 Читать далее...

17.05.2016г.
Просмотров: 10647
Комментарии: 0
Теория вычислений для программистов

 Читать далее...

30.03.2015г.
Просмотров: 12367
Комментарии: 0
От математики к обобщенному программированию

 Читать далее...

18.02.2014г.
Просмотров: 14000
Комментарии: 0
Рецензия на книгу «Читаем Тьюринга»

 Читать далее...

13.02.2014г.
Просмотров: 9126
Комментарии: 0
Читайте, размышляйте, действуйте

 Читать далее...

12.02.2014г.
Просмотров: 7079
Комментарии: 0
Рисуем наши мысли

 Читать далее...

10.02.2014г.
Просмотров: 5389
Комментарии: 3
Страна в цифрах

 Читать далее...

18.12.2013г.
Просмотров: 4617
Комментарии: 0
Большие данные меняют нашу жизнь

 Читать далее...

18.12.2013г.
Просмотров: 3428
Комментарии: 0
Компьютерные технологии – корень зла для точки роста

 Читать далее...

04.12.2013г.
Просмотров: 3156
Комментарии: 0
Паутина в облаках

 Читать далее...

03.12.2013г.
Просмотров: 3402
Комментарии: 0
Рецензия на книгу «MongoDB в действии»

 Читать далее...

02.12.2013г.
Просмотров: 3027
Комментарии: 0
Не думай о минутах свысока

 Читать далее...

Друзья сайта  

 Управление корзиной. Новый сервис в Active Directory

Архив номеров / 2009 / Выпуск №8 (81) / Управление корзиной. Новый сервис в Active Directory

Рубрика: Администрирование /  Продукты и решения

ИВАН КОРОБКО, сертифицированный специалист MCP, автор более 50 статей и двух книг. Занимается созданием различных приложений для Active Directory

Управление корзиной
Новый сервис в Active Directory

В Windows Server 2008 R2 реализовано несколько очень важных нововведений. Одно из них – корзина для восстановления учетных записей пользователей
в Active Directory.

Наряду с новой версией DFS, расширением схемы в Active Directory и многим другим в Windows Server 2008 R2, бета-версия которого уже доступна на сайте компании Microsoft [1], не только системный администратор, но и программист найдет один очень интересный сервис, с помощью которого можно восстанавливать удаленные объекты из каталога Active Directory. Создание такого сервиса потребовало от программистов Microsoft серьезной доработки основного инструмента управления этим сервисом – программной оболочки PowerShell и создания модуля для управления каталогом Active Directory (Windows PowerShell Integrated Scripting Environment). С его помощью реализовано управление учетными записями пользователей, групп, контейнеров, корзиной и другими объектами. По умолчанию этот сервис отключен.

Для включения этого сервиса необходимо выполнение следующих условий:

  • Операционная система Windows Server 2008 R2 (Standard, Enterprise, DataCenter).
  • Домен, функционирующий в режиме Windows Server 2008 R2.
  • Windows PowerShell Integrated Scripting Environment (ISE).
  • .NET Framework 3.5.1. Устанавливается вместе с операционной системой Windows Server 2008 R2. Необходим для работы Windows PowerShell ISE.

Активировать сервис можно из операционной системы семейства Windows Server 2008 R2 или Windows 7.

Установка PowerShell

Программное управление корзиной (Recycle Bin) и каталогом Active Directory в целом осуществляется с помощью модуля PowerShell [2] для управления Active Directory. В комплект Windows Server 2008 R2 входит Windows PowerShell Integrated Scripting Environment, в который включен этот модуль. По умолчанию PowerShell ISE не установлен.

Рисунок 1. Установка PowerShell ISE

Рисунок 1. Установка PowerShell ISE

После завершения процесса установки приложения в папке %SystemRoot%\system32\WindowsPowerShell\v1.0\Modules будут расположены дополнительные модули. В частности, в подпапке ActiveDirectory находится модуль управления объектами каталога Active Directory. Привязка модуля к оболочке осуществляется с помощью команды:

%SystemRoot%\system32\WindowsPowerShell\v1.0\powershell.exe -NoExit –ImportSystemModule

По умолчанию выполнение сценариев в PowerShell отключено, поэтому попытка импортировать нужный модуль с установленным по умолчанию уровнем доступа не увенчается успехом.

Существует четыре уровня безопасности запуска сценариев:

AllSigned – все файлы, в том числе и на локальной машине, содержащие сценарии на языке PowerShell, должны иметь цифровую подпись. При запуске файла оболочка задаст вопрос о том, доверяете ли вы данному издателю и можно ли доверять в дальнейшем файлам с этой подписью.

RemoteSigned – все сценарии, находящиеся в сети, должны быть подписаны. Файлы, запускаемые с локальной машины, могут не иметь цифровой подписи.

Restricted (по умолчанию) – выполнение сценариев запрещено.

Unrestricted – все сценарии, запускаемые с локального диска или из сети, могут не иметь цифровой подписи. Запуск файлов из сети сопровождается соответствующим предупреждением. Для его подавления необходимо в свойствах файла выбрать Unblock (разблокировать).

По умолчанию установлен режим Restricted, позволяющий работать с консолью только в интерактивном режиме.

Уровень безопасности задается с помощью параметра реестра ExecutionPolicy. Значение параметра соответствует названию уровня безопасности (см. листинг 1) или командлета Set-ExecutionPolicy, аргументом которого является одно из перечисленных в списке значений (см. рис. 2).

Листинг 1. Настройка параметра безопасности PowerShell по умолчанию

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/PowerShell1/Shell/Ids/Microsoft.PowerShell]

"ExecutionPolicy"="Restricted"

Рисунок 2. Запуск модуля для Active Directory

Рисунок 2. Запуск модуля для Active Directory

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

Управление режимом функционирования домена

Чтобы активировать новые функции, реализованные в домене, необходимо установить (обновить) новую версию операционной системы на всех контроллерах домена, в данном случае Windows Server 2008 R2, а затем изменить режим функционирования леса на Windows 2008 R2.

Для смены режима функционирования можно воспользоваться одним из способов:

  • с помощью командлета Set-ADForestMode в Power Shell ISE;
  • с помощью стандартной оснастки.

Изменение режима с помощью PowerShell

Для изменения режима необходимо запустить PowerShell с модулем управления каталогом Active Directory. При выполнении этих условий будет доступен командлет Set‑ADForestMode, имеющий следующий синтаксис:

Set-ADForestMode -Identity <ADForest> -ForestMode <ADForestMode>

где ADForest – DNS-имя домена, а ADForestMode – режим работы леса. В данном случае Windows2008R2Forest (см. рис. 3).

Рисунок 3. Изменение уровня функционирования леса

Рисунок 3. Изменение уровня функционирования леса

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

Изменение режима с помощью графического интерфейса

Для смены режима можно воспользоваться одной из оснасток управления каталогом: Active Directory Users and Computer или Active Directory Domain and Trusts. В появившейся оснастке необходимо вызвать контекстное меню домена и выбрать пункт Raise Domain Functional Level. В выведенном на экран диалогом окне необходимо выбрать нужный уровень домена, например Windows Server 2008 R2, и нажать «Изменить». После завершения работы мастера необходимо перезагрузить контроллер домена.

Рисунок 4. Изменение уровня функционирования домена

Рисунок 4. Изменение уровня функционирования домена

Включение Recycle Bin

Для активации корзины используется командлет Enable-ADOptionalFeature, имеющий три атрибута (см. рис. 5):

Identityзначением параметра является составной путь CN=Recycle Bin Feature,CN=Optional Features, CN=Directory Service,CN=Windows NT,CN=Services,CN=Configuration, DC=tasmania,DC=ru в домене tasmania.ru.

Scope – область действия корзины. Значение параметра Scope принимает один из трех параметров: Unknown, Domain, ForestOrConfigurationSet. Если домен в лесу один, то необходимо указать наибольшую из областей по смыслу, а именно лес – ForestOrConfigurationSet. Если в качестве области будет указан domain, то при выполнении командлета в этом случае будет выведено сообщение об ошибке.

Target – DNS-имя домена или леса в зависимости от области применения. В данном случае tasmania.ru.

Рисунок 5. Включение корзины в Active Directory

Рисунок 5. Включение корзины в Active Directory

Полный список доступных в модуле командлетов приведен в [2].

Анатомия удаленного объекта

Удаление объекта в каталоге Active Directory осуществляется традиционным образом: с помощью контекстного меню объекта необходимо выбрать пункт Delete и подтвердить выполнение желаемой операции в появившемся окне.

После включения корзины объект попадает в каталог CN=Deleted Objects,DC=tasmania,DC=ru. На рис. 6 приведен пример удаленной группы test. При удалении учетной записи со свойствами объекта происходят следующие преобразования:

  • к имени объекта добавляется DEL:xxxxxxxx-xxxx-xxxx-xxxxxxxxxxxx (см. рис. 6), где xxxxxxxx-xxxx-xxxx-xxxxxxxxxxxx – GUID объекта;
  • параметру isDelete присваивается значение TRUE. С помощью этого атрибута помечаются удаленные объекты;
  • первоначальное местоположение объекта является значением атрибута lastKnownParent.

Все остальные параметры остаются без изменения.

Рисунок 6. Удаленный в корзину объект Active Directory

Рисунок 6. Удаленный в корзину объект Active Directory

Управление объектами корзины

Осуществляется с помощью PowerShell или какой-либо графической оболочки, например, ADExplorer [3], Softerra LDAP Browser [4] или Softerra LDAP Administrator [5]. В рамках этой статьи уделим внимание управлению объектов только с помощью PowerShell. Управление корзиной подразумевает просмотр содержимого и восстановление удаленных объектов.

Просмотр содержимого корзины

После включения корзины в Active Directory появляется объект CN=Deleted Objects,DC=tasmania,DC=ru. Как видно из составного пути, он расположен в корне домена. Для просмотра содержимого указанного объекта используется командлет Get-ADObject (см. рис. 7), который имеет два атрибута:

SearchBase – значением этого ключа является составной путь к контейнеру Deleted Objects, который располагается в корневом каталоге пространства defaultNamingContext. Для домена tasmania.ru путь к контейнеру CN=Deleted Objects,dc=tasmania,DC=ru.

IncludeDeletedobjects – присутствие ключа указывает на необходимость вывести объекты, атрибут которых isDeleted=TRUE.

Filter – обязательный ключ. С его помощью задаются критерии поиска. Если необходимо найти все объекты, то в качестве значения необходимо указать звездочку «*».

ldapFilter – применяется, если необходимо использовать традиционный фильтр, например (&(objectClass=group)). Правила написания запросов для поиска в Active Directory см. в [6].

Рисунок 7. Просмотр содержимого корзины

Рисунок 7. Просмотр содержимого корзины

В листинге 2 приведен пример вывода всех учетных записей, имеющих атрибут isDeleted=TRUE. Корзина также имеет этот атрибут, поэтому первой записью в числе найденных будет учетная запись корзины.

Листинг 2. Вывод списка удаленных пользователей

Get-ADObject -SearchBase "CN=Deleted Objects,DC=tasmania, DC=ru" -includeDeletedObjects -filter * | format-table -autosize -property name, distinguishedname

В приведенном примере для удобства восприятия информации использован форматирующий вывод командлет format-table, располагающий выводимые данные в таблице. С помощью ключа autosize осуществляется «укладывание» информации, а с помощью ключа property осуществляется вывод колонки name, а затем distinguishedname.

Восстановление удаленных объектов

Восстановление объектов осуществляется с помощью совместного использования командлета Restore-ADObject. В некоторых случаях, когда необходимо восстановить группу объектов по указанным критериям, используется командлет Get-ADObject в сочетании с Restore-ADObject.

Для восстановления одиночного объекта используется Restore-ADObject. Для однозначной идентификации объекта рекомендуется указать GUID объекта – уникальное 128-битное число (см. листинг 3).

Листинг 3. Восстановление удаленного объекта по его GUID

Restore-ADObject -Identity 27d63f9d-4002-4214-a6b6-49cbf6f4eb49

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

В первом способе используется обычный фильтр PowerShell. Для вызова этого фильтра указывают параметр ldapFilter, после которого в фигурных скобках {...} записывается критерий поиска. При его составлении используются операторы сравнения (см. таблицу 1) и логические операторы (см. таблицу 2).

Таблица 1. Операторы сравнения в PowerShell

Оператор

Значение

Оператор

Значение

-eq

равно

-ne

не равно

-lt

меньше

-gt

больше

-le

меньше или равно

-gt

больше или равно

-contains

содержит

-not contains

не содержит

Таблица 2. Логические операторы в PowerShell

Оператор

Значение

Оператор

Значение

-and

И

-not

НЕ

-or

ИЛИ

!

НЕ

Критерий поиска формируется по следующему шаблону:

{AD_Attribute EQ_Operator 'AD_Value' LOG_Operator ...}

 AD_Attribute – название атрибута;

EQ_operator – оператор сравнения;

AD_Value – значение атрибута, заключаемое в одинарные кавычки;

LOG_Operator – логический оператор.

В листинге 4а приведен пример поиска всех учетных записей групп и их восстановления в соответствующие папки. Эта же операция для группы объектов осуществляется с помощью двух командлетов. Командлет Get-ADObject используется для поиска объектов по указанным параметрам, а затем с помощью оператора конвейера (|) осуществляется восстановление отобранных объектов.

Листинг 4а. Восстановление группы удаленных объектов (использование параметра Filter)

Get-ADObject -SearchBase "CN=Deleted Objects,DC=tasmania,DC=ru" -includeDeletedObjects -Filter {objectClass -eq 'group'} | Restore-ADObject

Рассмотрим второй способ – создание фильтра. Для тех администраторов, которые сталкивались с программированием Active Directory, он будет более понятен, поскольку для него используется LDAP-фильтр, признаком которого служит ключ ldapFilter. В листинге 4б приведен аналогичный пример с использованием другого фильтра [6].

Листинг 4б. Восстановление группы удаленных объектов (использование параметра ldapFilter)

Get-ADObject -SearchBase "CN=Deleted Objects,DC=tasmania,DC=ru" -includeDeletedObjects -ldapFilter "objectClass=group" | Restore-ADObject

В зависимости от поставленной задачи рекомендуется применять тот или иной фильтр. Например, для создания сценария (см. листинг 5), который восстанавливает все объекты, находившиеся в какой-либо папке, лучше всего использовать первый способ, поскольку в формировании фильтра используется значение атрибута lastKnownParent – составного пути к контейнеру, в котором хранился объект до удаления.

Листинг 5. Восстановление группы объектов удаленных из указанной папки

Get-ADObject -SearchBase "CN=Deleted Objects,DC=tasmania,DC=ru" -includeDeletedObjects -Filter {lastKnownParent -eq 'OU=WorkSpace,DC=tasmania, DC=ru'}

***

В последние годы Active Directory претерпевает множество значительных изменений, однако их реализация, в частности, корзина – частичная. Ее может использовать только опытный системный администратор, владеющий навыками программирования на PowerShell, который не так давно появился. Встроенный стандартный графический интерфейс для управления этими объектами отсутствует. Будем надеяться, что к выходу операционной системы в свет Microsoft исправит эти недочеты.

  1. Дистрибутив Release Candidate Windows Server 2008 R2 – http://www.microsoft.com/windowsserver2008/en/us/R2-Download.aspx.
  2. Список командлетов PowerShell в модуле для Active Directory – http://go.microsoft.com/fwlink/?LinkID=140056.
  3. Active Directory Explorer v1.2 (freeware) – http://download.sysinternals.com/Files/AdExplorer.zip.
  4. Softerra Ldap Browser 2.6 (freeware) – http://www.ldapadministrator.com/download.htm.
  5. Softerra Ldap Administrator (shareware) – http://www.ldapadministrator.com/download.htm.
  6. Правила написания фильтров поиска – http://msdn.microsoft.com/ru-ru/library/system.directoryservices.directorysearcher.filter.aspx.

Комментарии отсутствуют

Добавить комментарий

Комментарии могут оставлять только зарегистрированные пользователи

               Copyright © Системный администратор

Яндекс.Метрика
Tel.: (499) 277-12-45
E-mail: sa@samag.ru