belloci
Goto Top

Massenänderung im AD mit LDIFDE hier - Modify

Da ich vor kurzem vor dem Problem einer Massenänderung innerhalb des Active Directorys stand und ich keine passende Beschreibung für meinen Fall im Netz gefunden habe bin ich so frei und erstelle hier eine kleine Hilfestellung. Bei Ergänzungen immer her damit face-wink

In unserer Domäne mussten alle Telefon- Fax- und Mobilfunknummern geändert werden. Diese waren auf dem Stand +49 (0) 123 / 45 67 89. Da einige Leute aber diese Nummern mit ihrem Handy synchronisieren, war das weniger gut denn ein Smartphone kann nichts mit () (Klammern) anfangen.

Ich habe viel gefummelt und probiert, das passende Werkzeug hierfür ist LDIFDE! Mit diesem Tool kann man Einträge modifizieren, löschen und gar neue Benutzer oder Gruppen anlegen. In diesem Beispiel geht es um modifizieren!!
Starten wir mit dem exportieren der Daten aus dem AD, dafür gibt es den Befehl:

ldifde -m -f test.ldf -r "(&(ObjectClass=person)(TelephoneNumber=*))" -l name,telephoneNumber

Den Befehl erkläre ich nicht im Einzelnen. Kurz gesagt: Es werden alle User (Personen) in eine Liste „test.ldf“ exportiert, die auch eine Telefonnummer eingetragen haben. Danke an User „Bastla“ der mich sehr unterstützt hat.
Danach können wir anfangen, die Datensätze in Excel zu verarbeiten. Um die Datensätze ins korrekte „LDIFDE-Format“ zu bringen müssen wir folgendes tun:

1) Nach jedem Datensatz muss ein „-„ und ein Absatz (ENTER). Ein Beispiel füge ich mit an. Das Ganze bewerkstelligen wir in diesem Falle mit Makros

2) Mit suchen und ersetzen in Excel arbeiten um die gewünschten Datensätze zu bearbeiten um die Nummern ins richtige Format zu bekommen

Zu 1) „Makro – Leerzeichen einfügen“:
For I = 5 To 3500 Step 5 + 1
  Rows(I).Select
  Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove

Next I
End Sub
„Makro – Bindestrich unter jeden Datensatz“:
For i = 5 To 3500 Step 5 + 1
Cells(i, "A").Value = "-"  
Next i
End Sub

Zu 2) Suchen und ersetzen:
Als letztes suchen und ersetzen wir zum einen „add“ (wir wollen nichts hinzufügen) mit „modify“ (ja, wir wollen die Datensätze bzw. die vorhandenen User modifizieren) und zum anderen suchen wir nach „+49 (0)“ und ersetzen es mit „+49“. Danach speichern wir, am besten als txt datei und nennen es in ldf um (*.ldf).

Schauen wir uns mal Datensätze an, die LDIFDE versteht. Anders ausgedrückt: Die Datensätze MÜSSEN so aufgebaut sein sonst hagelt es Fehlermeldungen.
dn: CN=Pan\, Peter,OU=IT,OU=Nimmerland,OU=Standorte,DC=Schlaraffenland,DC=local
changetype: modify
replace: TelephoneNumber
TelephoneNumber: +49 123 / 456 7 89
-

dn: CN=Hook\, Captain,OU=IT,OU=Nimmerland,OU=Standorte,DC=Schlaraffenland,DC=local
changetype: modify
replace: TelephoneNumber
TelephoneNumber: +49 123 / 456 7 89
-
einfügen der Datei: ldifde -i -f test.ldf -k --> Import der Datei...

Vielen Dank nochmals an User „Bastla“ und andere User die mich unterstützt haben und hoffe hiermit ein klein wenig helfen zu können…

Content-Key: 194499

Url: https://administrator.de/contentid/194499

Printed on: April 18, 2024 at 10:04 o'clock