AD Userdaten mit Daten aus SQL DB updaten -on fly-
Hallo Zusammen,
ich stehe zur Zeit vor der Aufgabe, ein Programm zu realisieren, mit dem ich Daten aus einer SQL DB auslesen und damit dirket (on-fly quasi) das Active Directroy updaten kann.
geplanter Verlauf:
- Mein Programm startet
- Das Programm liest die Datensätze der SQL DB aus (cursor/fetch vllt)
- jede gelesene Zeile soll in das AD an die entsprechende Stelle eingefügt werden (alle User sind bereits vorhandeln, es gibt immer nur updates)
Mein Problem:
Die MicrosoftSkripte befassen sich meist nur mit der Änderung eines bestimmten Attributes in einen fixen Wert, innerhlab des ADs. Bei mir müsste das Skript aber variable Werte (die aus der DB ausgelesen wurden) händeln können.
Und ich finde zur Zeit nicht den richtigen Ansatz (Codebespiel), wie ich die Aufgaben lösen könnte.
Könnt ihr mir dabei weiterhelfen?? Mit einem Beispiel zum Beispiel wie ich die beiden unterschiedlichen DBs anspreche. Bzw. was ich beim AD alles beachten muss.
ich bin dankebar für jedliche Art von Hilfe.
LG Muriel
ich stehe zur Zeit vor der Aufgabe, ein Programm zu realisieren, mit dem ich Daten aus einer SQL DB auslesen und damit dirket (on-fly quasi) das Active Directroy updaten kann.
geplanter Verlauf:
- Mein Programm startet
- Das Programm liest die Datensätze der SQL DB aus (cursor/fetch vllt)
- jede gelesene Zeile soll in das AD an die entsprechende Stelle eingefügt werden (alle User sind bereits vorhandeln, es gibt immer nur updates)
Mein Problem:
Die MicrosoftSkripte befassen sich meist nur mit der Änderung eines bestimmten Attributes in einen fixen Wert, innerhlab des ADs. Bei mir müsste das Skript aber variable Werte (die aus der DB ausgelesen wurden) händeln können.
Und ich finde zur Zeit nicht den richtigen Ansatz (Codebespiel), wie ich die Aufgaben lösen könnte.
Könnt ihr mir dabei weiterhelfen?? Mit einem Beispiel zum Beispiel wie ich die beiden unterschiedlichen DBs anspreche. Bzw. was ich beim AD alles beachten muss.
ich bin dankebar für jedliche Art von Hilfe.
LG Muriel
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 64455
Url: https://administrator.de/contentid/64455
Ausgedruckt am: 14.11.2024 um 23:11 Uhr
4 Kommentare
Neuester Kommentar
Moin Muriel
Wir tun was wir können
Gruß Andreas
geplanter Verlauf:
- Mein Programm startet
- Das Programm liest die Datensätze der SQL DB aus (cursor/fetch vllt)
Wie ist denn so ein Datensatz aufgebaut???- Mein Programm startet
- Das Programm liest die Datensätze der SQL DB aus (cursor/fetch vllt)
- jede gelesene Zeile soll in das AD an die entsprechende Stelle eingefügt werden
(alle User sind bereits vorhandeln, es gibt immer nur updates)
Na damit hättest du doch zumindest einen Ansatz für das AD-Objekt = Username(alle User sind bereits vorhandeln, es gibt immer nur updates)
Mein Problem:
Die MicrosoftSkripte befassen sich meist nur mit der Änderung eines bestimmten
Attributes in einen fixen Wert, innerhlab des ADs. Bei mir müsste das Skript aber
variable Werte (die aus der DB ausgelesen wurden) händeln können.
Wie gesagt ohne genaue Kenntnis deiner DB-Struktur läßt sich nur vermuten, wie dir auf die Sprünge zu helfen ist. Am ehesten ist machbar wäre so ein Script, wenn du eine feste Anzahl an Objekteigenschaften in deiner Datenbank hättest.Die MicrosoftSkripte befassen sich meist nur mit der Änderung eines bestimmten
Attributes in einen fixen Wert, innerhlab des ADs. Bei mir müsste das Skript aber
variable Werte (die aus der DB ausgelesen wurden) händeln können.
Und ich finde zur Zeit nicht den richtigen Ansatz (Codebespiel), wie ich die Aufgaben
lösen könnte.
Beantworte erst mal obige Fragen, sonst gehts kaum.lösen könnte.
Könnt ihr mir dabei weiterhelfen?? Mit einem Beispiel zum Beispiel wie ich die
beiden unterschiedlichen DBs anspreche. Bzw. was ich beim AD alles beachten muss.
Prinzipiell hast du doch die MS-Scripte zum ändern eines Users schon da. Du müsstest mit einem Script nur eine Zuordnung der Datensätze zu den Objekteigenschaften realisieren. D.h. du musst dir einen Variablensatz für die Objekteigenschaften definieren und je nach Aufbau deiner DB entsprechnede SQL-Abfragen generieren zum Umsetzen dieser Zuordnung.beiden unterschiedlichen DBs anspreche. Bzw. was ich beim AD alles beachten muss.
ich bin dankebar für jedliche Art von Hilfe.
LG Muriel
LG Muriel
Wir tun was wir können
Gruß Andreas
Moin Muriel
Na damit hast du doch den festen Varaiblensatz den ich meinte
Genau und wie man das machen kann steht ausführlich im Scripting-Handbuch von MS beschrieben. Dort findest du auch in der Abb. 5.5 deine gewünschten Objekteigenschaften, die du dann in deinem Script über Variablenzuweisung setzen musst.
Beispiel Scripte findest du auch in der Technet Using VBScript und ADSI. Das einzige was du für dich erarbeiten musst, ist folgendes:
Generiere mit deinem Script per SQL-Abfragen die erforderlichen Variablen für die Objekteigenschaften des zu ändernden AD-Users
Hier mal ins blaue wie du vorgehen solltest:
So damit solltest du das Grundgerüst auch schon haben. Jetzt gehts schon ans eingemachte.
Nu haste erstmal ne Menge Stoff zum "Arbeiten"
Falls du dann noch Fragen hast meld dich einfach wieder. Allerdings bin ich in SQL nich so bewandert. (Ich selbst arbeite über ein Script das aus einer Excel-Tabelle neue User generiert
nach MSDN-Anleitung
Schwierig wird es dann erst, wenn deine User auch noch in verschiedenen OU's liegen und vielleicht auch noch doppelte Namen vorkommen. Wie gesagt mit festen Zuordnungen sollte aber erstmal dir geholfen sein
Viel Spass
Gruß Andreas
Es sind Userdaten aus einer SQL DB, maximal aus zwei Tabellen. Also tbl1 beinhaltet z.B.
Nachname, Vorname, UserID und tbl2 hat noch Zusätze zu dem User, wie Strasse, Ort, Telefon
Nachname, Vorname, UserID und tbl2 hat noch Zusätze zu dem User, wie Strasse, Ort, Telefon
Na damit hast du doch den festen Varaiblensatz den ich meinte
im AD geht es um die Userverwaltung. Sprich von mir festgelegte Objekteigenschaften
sollen geupdatet werden , wie der Name, die ASdresse und die Telefonnummer..,
sollen geupdatet werden , wie der Name, die ASdresse und die Telefonnummer..,
Genau und wie man das machen kann steht ausführlich im Scripting-Handbuch von MS beschrieben. Dort findest du auch in der Abb. 5.5 deine gewünschten Objekteigenschaften, die du dann in deinem Script über Variablenzuweisung setzen musst.
Das trifft es wohl ganz gut als Zusamemnfassung. Aber ich habe die MS-Scripte
nicht vorliegen. Meine Aufgabe ist es solch ein Skript zu schreiben....
nicht vorliegen. Meine Aufgabe ist es solch ein Skript zu schreiben....
Beispiel Scripte findest du auch in der Technet Using VBScript und ADSI. Das einzige was du für dich erarbeiten musst, ist folgendes:
Generiere mit deinem Script per SQL-Abfragen die erforderlichen Variablen für die Objekteigenschaften des zu ändernden AD-Users
Hier mal ins blaue wie du vorgehen solltest:
- Wie gesagt bevor du dich ans Programmieren setzt studiere diese beiden Links erst mal ausführlich und du wirst sehen so schwer is das gar nicht
- Erstelle dir erst einmal Beispiel Scripte für das Setzen von Eigenschaften eines Benutzers
- Teste diese Scripte mit festen Werten für Testuser (ausserhalb deiner DB)
- Erstelle dir ein Script mit SQL-Abfragen auf deine Tabellen für 1 (!!!) Datensatz und weise die Ergebnisse jeweils Variablen zu (diese Sollten den Objekteigenschaften entsprechen zum leichteren Wiederfinden)
- Nimm dein Testscript (siehe 3.) und ändere die festen Objekteigenschaften durch die Variablen aus der SQL-Abfrage
So damit solltest du das Grundgerüst auch schon haben. Jetzt gehts schon ans eingemachte.
- Plan erstellen wann, wie oft, was geändert werden soll an Objekteigenschaften
- Überlegung ob der ganze Datensatz ausgelesen werden soll oder nur geänderte Daten
- Je nachdem wie du dich entschieden hast wird nun dein richtiges Script mehr oder weniger aufwendig in der Programmlogik
- Je nach Plan kannst du nun mit Zeitgesteuerter Wiederholung (automatischer Task) deines Grundscriptes arbeiten oder du musst dir z.B. über eine dynamische Differenz-Tabelle behelfen die dann dein Script ausführt
Nu haste erstmal ne Menge Stoff zum "Arbeiten"
Falls du dann noch Fragen hast meld dich einfach wieder. Allerdings bin ich in SQL nich so bewandert. (Ich selbst arbeite über ein Script das aus einer Excel-Tabelle neue User generiert
nach MSDN-Anleitung
Schwierig wird es dann erst, wenn deine User auch noch in verschiedenen OU's liegen und vielleicht auch noch doppelte Namen vorkommen. Wie gesagt mit festen Zuordnungen sollte aber erstmal dir geholfen sein
Viel Spass
Gruß Andreas