Logo faq-o-matic.net
Logo faq-o-matic.net

Importdateien für CSVDE.exe einfach generieren

von veröffentlicht am12. April 2006, 15:58 Uhr Kurzlink und Zitatlink einblenden
Kategorie Kategorie: Active Directory, AD: Daten bearbeiten, Scripting   Translate with Google Translate Translate EN   Die angezeigte Seite drucken
Zuletzt aktualisiert: 6. Januar 2008

Um eine große Zahl an Benutzerkonten im Active Directory zu erstellen, kann das Import- und Export-Tool CSVDE.exe verwendet werden. Mit Excel ist es recht einfach, eine Tabelle mit allen benötigten Angaben zu erstellen. In diesem Artikel wird erklärt, wie du dir mit Excel-Formeln eine große Anzahl an Eingaben ersparen kannst.

Erster Schritt:

Erstelle dir eine Excel-Tabelle mit allen benötigten Überschriften. Zur Hilfe kann ein Benutzer aus dem Active Directory exportiert werden und die Ausgabedatei in Excel importiert werden. Hilfe zum Exportieren findest du, wenn du den Befehl csvde.exe /? in der Eingabeauforderung eingibst.

Zweiter Schritt:

Nachdem du eine Ausgabedatei erstellt hast, kannst du diese in Excel importieren. Starte dazu Excel, dann dort ins Menü Daten – Externe Daten Importieren – Daten Importieren.

  • Wähle die Ausgabedatei aus und klicke auf „Getrennt“ – weiter – „Tabstopp“ – deaktivieren und „Komma“ aktivieren.
  • Das Texterkennungszeichen sollte das Anführungszeichen („) sein.
  • Klicke auf „weiter“ und „Fertigstellen“.
  • Eine Zelle zum Importieren auswählen und auf „OK“.

Deine Excel-Tabelle sollte dann ungefähr so aussehen:

Leider passen nicht alle vorhandenen Überschriften auf diese Seite.

Dritter Schritt:

Nun kannst du die Spalten löschen, die du nicht benötigst. In der Regel gehören dazu z. B. die Systemfelder; um diese gleich beim Export wegzulassen, kannst du beim csvde-Exportkommando den Schalter -m angeben. Wenn du nicht genau weißt was welche Überschrift bedeutet, kannst du dir einen Benutzer exportieren, bei dem alle benötigten Felder in den Eigenschaften ausgefüllt sind und diese findest du dann auch in der Tabelle wieder. Alternativ schaust du dir unsere Übersicht von LDAP-Feldbezeichnungen an.

Am Ende hast du dann ein Tabellenblatt mit den Überschriften, die du für deine Benutzer benötigst. Damit du am Ende nur noch den Vornamen und den Nachnamen (und die individuellen Einträge wie Telefonnummer usw.) in die Tabelle eintragen musst, habe ich mir die Überschriften „sn“ (Nachname) und „giveName“ (Vorname) an den Anfang der Tabelle gezogen.
Beispiel:

Vierter Schritt:

Jetzt kommen die Formeln in Excel zum Einsatz:

In der Spalte C2 (DN) wird der DN (Distinguished Name) des Benutzers angegeben. Damit du diese Spalte nicht jedes Mal neu Tippen müsst, bezieht sich der erste Teil (hinter „CN=“) auf die Spalten A2 (sn) und B2 (givenName). Der restliche Teil ändert sich nur, wenn die Benutzer in unterschiedlichen Organisationseinheiten importiert werden sollen.

!!! Wichtig !!!
Die OUs (Organisationseinheiten) werden hier nicht automatisch mit erstellt! Sie müssen bereits vorhanden sein, bevor Objekte dort angelegt werden können.

Als Formel sieht das Ganze dann so aus:

Wenn du dann in die Felder A2 und B2 den Vor- und Nachnamen der Benutzer einträgst, wird die Zeile C2 automatisch aufgefüllt. Beispiel:

Sollte der Vorname nicht als erstes stehen, sind in der Formel die Verweise A2 und B2 zu tauschen. In den Zellen, die für alle Benutzer gleich sind, ist keine Formel erforderlich. Diese kannst du einfach durch herunterziehen oder Copy/Paste übernehmen.

Im Folgenden sind die weiteren Formeln erläutert:

CN:

Die Zeichen “ “ sorgen für ein Leerzeichen zwischen Vorname und Nachname.

distinguishedName:

Dort kannst du den Inhalt von C2 übernehmen und musst nicht die ganze Formel wiederholen.

displayName und name:

Hier kannst du auch den Inhalt einer vorher berechneten Zelle (E2) übernehmen ohne wieder die ganze Formel eintragen zu müssen.

samAccountName:

Beim „sAMAccountName“ verwende ich die Formel „LINKS“ damit ich den Nachnamen aus Zelle A2 mit dem ersten Buchstaben des Vornamens aus Zelle B2 (LINKS(B2,1)) verbinden kann. Natürlich geht das auch in jeder anderen Konstellation. Hilfe zu den verschiedenen Formeln findest du in Excel.

userPrincipalName:

Hier wurde wieder der Inhalt aus Zelle A2 (CN) mit einem Text verknüpft.

Fünfter Schritt:

Nun brauchst du dir nur noch die Zellen mit allen gleichen Inhalten wie z.B. „company“, „co“ oder „streetAddress“ zu vervielfältigen und die Excel Tabelle ist fast voll. Am Schluss trägst du noch die Nachnamen und Vornamen der Benutzer in die Felder „cn“ und „givenName“ ein und der Rest vervollständigt sich von selbst.

!!! Wichtig !!!
Felder wie die Telefonnummer, Mobilenummer oder Büro müssen weiterhin ausgefüllt werden, da diese sich ja sicher von Benutzer zu Benutzer unterscheiden. 

Sechster Schritt:

Jetzt haben wir eine wunderbare Excel-Tabelle mit allen Informationen, die wir im Active Directory für unsere Benutzer benötigen. Jetzt muss das ganze als Eingabe.csv gespeichert und mit dem Editor angepasst werden. Excel wird einige Warnungen anzeigen, wenn du die Datei als CSV-Datei speicherst. Dies liegt daran, dass das CSV-Format keine Tabellenblätter unterstützt und Excel nicht ganz genau die gleiche Formatierung vornimmt, die für eine CSV-Datei nötig wäre. Deshalb musst du die CSV Datei noch mit dem Editor anpassen. (Alternativ zu dem folgenden siebten Schritt kannst du auch unser Excel-Makro zum echten CSV-Export nutzen.)

Siebter Schritt:

So sieht die oben gezeigte Datei dann als CSV-Datei aus:

Wenn du diese CSV-Datei mit der exportierten Datei vom Anfang vergleichst, siehst du, dass vor dem CN= immer ein “ (Anführungszeichen) steht und am Ende des Strings auch ein “ (Anführungszeichen) zu finden ist. Du kannst diese Anführungszeichen einbauen, indem du die Ersetzen-Funktion des Editors nutzt: Klicke auf Bearbeiten – Ersetzen, Beispiel:

Zu beachten ist, dass nicht vor jedes CN= ein Anführungszeichen eingefügt werden darf. Dies kannst du umgehen, indem du das oben gezeigte Beispiel verwendest. Damit bekommt nur der Stringanfang ein Anführungszeichen. Da innerhalb des Strings das Komma als Trennzeichen verwendet wird, ändert das Beispiel von oben nur das erste CN= des Strings. Mit dem gleichen Verfahren kann dann ans Ende jedes Strings (gekennzeichnet durch DC=de;) ein Anführungszeichen gesetzt werden. Also ersetzten wir DC=de; durch DC=de“, .

Jetzt müssen nur noch alle Semikolons durch Kommas ersetzt werden und die Datei kann als Eingabe.csv gespeichert werden.

Achter Schritt:

Der Import der Datei Eingabe.csv wird wieder mit dem Tool CSVDE.exe mit den Schaltern „-i“ für Import und „-f Eingabe.csv“ für die Datei erledigt. Die Benutzer werden dann als deaktivierte Benutzer in Active Directory erstellt. Alle unterstützten Schalter zeigt csvde /? an.

Für Verbesserungsvorschläge oder weitere Anregungen bin ich immer dankbar!

© 2005-2017 bei faq-o-matic.net. Alle Rechte an den Texten liegen bei deren Autorinnen und Autoren.

Jede Wiederveröffentlichung der Texte oder von Auszügen daraus - egal ob kommerziell oder nicht - bedarf der ausdrücklichen Genehmigung durch die jeweiligen Urheberinnen oder Urheber.

Das Impressum findet sich unter: http://www.faq-o-matic.net/impressum/

Danke, dass du faq-o-matic.net nutzt. Du hast ein einfaches Blog sehr glücklich gemacht!