Restore deleted objects in AD

27 мая 2009 г.
Comments

Были случаи когда Вы случайно удалили пользователя из Active Directory? :) Лично у меня да. Создавать новую учетную запись вариант не самый лучший. Мы попробуем ее восстановить. Нам понадобится ldp.exe из Windows Support Tools и немного знаний об объектах “Tombstone Objects.

Что же происходит в AD когда мы удаляем объект? На самом беле объект не удаляется сразу, а перемещается в контейнер “Deleted Objects”. При этом у него меняется значение атрибута “distinguishedName” – после имени появляется флаг 0ADEL, появляется атрибут isDeleted значения которого True или False говорят о том что объект помечен на удаление, и в атрибут “whenChanged” проставляется время удаления объекта. После этого по контейнеру “Deleted Objects” проходится так называемый “Garbage Collector” (сборщик мусора) и проверяет не наступило ли время захоронения объекта. И если это так - то объект удалится навсегда. Время захоронения в днях определяется атрибутом “tombstoneLifetimeобъекта “CN=Directory Service, CN=Windows NT, CN=Services, CN=Configuration, DC=ForestRoot Domain Name” по умолчания он принимает значение:

  • 180 дней если контролер домена расположен на Windows Server 2003 с Service Pack 1 (SP1), Windows Server 2003 с Service Pack 2 (SP2), Windows Server 2008, Windows Server 2008 R2
  • 60 дней если контролер домена расположен на Windows 2000 Server, Windows Server 2003, Windows Server 2003 R2

И так присоединяемся к контролеру домена используя утилиту ldp.exe. Чтобы нам увидеть контейнер “Deleted Objects” делаем следующие:

  • в меню Options выбираем команду Controls
  • окне в поле Load Predefined из ниспадающего списка выбираем Return deleted objects

Затем окне Tree view в поле BaseDN выбираем корень леса и ищем контейнер CN=Deleted Objects, находи объект который мы хоти восстановить.

Теперь самое интересное:

Правым кликом вызываем контекстное меню, выбираем в нем пункт Modify.

  • в разделе Edit Entry, в поле Attribute вводим “isDeleted, в панели Operation выбираем Delete, затем жмем Enter.
  • в разделе Edit Entry, в поле Attribute вводим имя атрибута “distiguishedName” в поле Values вводим значение атрибута “CN” который был до удаления плюс значение атрибута “lastKnownParent
  • в разделе Operation, выбираем – Replace, жмем Enter
  • выбираем флаги Synchronous и Extended нажимаем кнопку Run

Вызываем оснастку dsa.msc, переходив в контейнер который был указан в атрибуте “lastKnownParent”. Включаем учетную запись и получаем сообщение:

imageЗначит нужно изменить сначала пароль, а затем включить учетную запись.

Материалы по восстановлению объектов в AD можно почитать на TechNet MSDN

Ярлыки: