Dass man unter Windows Server 2008 mit dem Kommandozeilenprogramm „ntdsutil“ Snapshots von einem produktiven Active Directory erstellen kann, ist bereits weitläufig bekannt. Siehe dazu z.B. unseren Artikel:
[faq-o-matic.net » Windows Server 2008: Snapshots des Active Directory]
http://www.faq-o-matic.net/2007/04/30/windows-server-2008-snapshots-des-active-directory/
Wenn man sich allerdings etwas eingehender mit dieser Funktion beschäftigt, dann wird man recht schnell feststellen, dass man mit diesen Snapshots nicht viel anfangen kann. Wenn man zum Beispiel Veränderungen nachverfolgen möchte, die seit dem Erstellen des Snapshots aufgetreten sind, dann ist das mit den Boardmitteln des Servers recht mühselig beziehungsweise in größeren Umgebungen fast unmöglich. Deshalb habe ich schon des Öfteren darüber nachgedacht, ein Tool zu entwickeln, was automatisch diese Veränderungen auffinden kann und diese dann zur Darstellung bringt.
Bevor ich solche großen Projekte anfange, bemühe ich „google“, um eventuell Lösungsansätze oder auch schon fertige Anwendungen zu finden. Dabei ist mir das Tool „Directory Service Comparison Tool 1.2.1” aufgefallen, was durch Fredrik Lindström entwickelt wurde. Dieses MMC Snapin erfüllt alle Dinge, die man sich bei der Arbeit mit AD Snapshots nur wünschen kann.
Zu den Features zählen:
- Anzeigen von Unterschieden zwischen Objekten im produktiven Active Directory und einem Active Directory Snapshot
- Wiederherstellen von Objektattributen mit der Hilfe eines Snapshots
- Wiederherstellen gelöschter Objekte im produktiven Active Directory
- Wiederherstellen von Gruppenmitgliedschaften
Damit man mit diesem Tool arbeiten kann, benötigt man als Erstes einen AD Snapshot, der mit dem Kommandozeilenprogramm „dsamain“ bereitgestellt wurde. Wie Snapshots erstellt und bereitgestellt werden, wird in unserem oben aufgeführten Artikel erklärt.
Danach benötigt man natürlich noch das „Directory Service Comparison Tool 1.2.1”.
Nach dem Herunterladen und Installieren hat kann man es als Snapin in eine MMC hinzufügen.
Anschließend muss man eine Verbindung zum produktiven Active Directroy und zum bereitgestellten Snapshot herstellen.
Wenn die Verbindung erfolgreich war, kommt es noch zu einer kleinen Abfrage. Diese Abfrage ist notwendig, da bei einem Active Directory Snapshot die „highestCommitedUSN“ verändert wird. Dadurch erscheint der Snapshot aktueller als das produktive Active Directory. Diesen Bug hat Fredrik galant umschifft, indem er ein Attribut eines Benutzers solange aktualisiert, bis das produktive Active Directory eine höhere „highestCommitedUSN“ als der Snapshot hat.
Nachdem das erledigt ist, werden sofort die Unterschiede zwischen beiden Versionen angezeigt. Ich habe in meiner Demoumgebung alle Möglichkeiten nachgestellt. Als Erstes habe ich bei einer bereits existierenden Gruppe das Feld „Beschreibung“ ausgefüllt.
Auch mein neuerstellter Benutzer wurde einwandfrei durch das Tool erkannt.
Bei meinem dritten Versuch habe ich ein Objekt im produktiven Active Directory gelöscht. Das Tool erkennt dieses gelöschte Objekt und bietet auch das Wiederherstellen an. Der Vorteil des Wiederherstellens von Objekten aus einem Snapshot heraus besteht darin, dass man auch alle Attribute des Objektes wiederherstellen kann. Dadurch kann man zum Beispiel bei gelöschten Benutzern auch die Gruppenmitgliedschaften wiederherstellen.
Alles in allem kann man auf dieses Tool nicht verzichten, wenn man ernsthaft mit Active Directory Snapshots arbeiten will.
Vielen Dank an Fredrik für die Zeit und Mühe, die er in dieses Tool investiert hat.
http://faq-o-matic.net/?p=957