Jump to content

AdsScripter - VB Scripte autmatisch erzeugen


jensw_2000
Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Empfohlene Beiträge

InnovaSoft AdsScripter (Freeware)

 

 

Programmbeschreibung

Der InnovaSoft AdsScripter ist ein modular gestaltetes Freeware Hilfsprogramm zum Erstellen von komplexen, Visual Basic Script basierten, ADSI Scripten (ADSI = Active Directory Script Interface).

 

Derzeit wird das Programm mit zwei leistungsfähigen "Scriptbuilder - Plugins" ausgeliefert.

(Vorschläge und Wünsche für weitere "Scriptbuilder-Plugins" sind willkommen)

Mit diesen können Sie im Handumdrehen VB-Scripte für folgende Aufgaben generieren:

 

 

Funktionen (Scriptbuilder-Plugin "CreateUser.ads"):

 

Generiert VB-Scripte zum Script zum Erstellen von Active Directory Benutzern und zum Setzen der grundlegenden Benutzereinstellungen, wie z.B: Gruppenzugehörigkeiten und AD Container, Home- und Profilverzeichnisse, Anmeldescript, Adresse, Mailkonto...

Sie fast alle Benutzereigenschaften über das erzeugte Script automatisiert setzen.

Home- und Profileverzeichnisse und die dafür vorgesehenen NTFS Rechte können automatisiert angelegt und gesetzt werden.

Nicht vorhandene Gruppen und Organisationseinheiten werden automatisch angelegt.

Sie können Benutzerlisten aus einer Excel Arbeitsmappe importieren.

Abschließend haben Sie die Möglichkeit das Script im AdsScripter zu starten und/oder eine VBS Datei zur späteren externen Ausführung zu speichern.

 

Funktionen (Scriptbuilder-Plugin "PasswordTools.ads"):

 

Generiert VB-Scripte zum Setzen von Passwörtern, Zurücksetzen von gesperrten Konten sowie zum Erzwingen einer Passwortänderung bei der nächsten Anmeldung.

Sie können das Script für einen bestimmten User, oder für alle Benutzer im Active Directory verwenden.

 

Wichtig:

Dieses Script ignoriert Benutzerkonten, die das Flag "Kennwort läuft nie ab" gesetzt haben. Somit sind Dienst- und Funktionskonten, sowie der Administrator vor dem unfreiwilligen Ändern der Anmeldedaten geschützt.

 

 

Schöne Grüße,

JensW_2000

bearbeitet von blub
Link zu diesem Kommentar

neues Update verfügbar..

 

Bufgix:

Im Scriptbuilder "CreateUser.ads" war noch eine "harte" Variable drin, die immer den Wert "Hamburg" bekam.

Somit wurden dem User keine NTFS Rechte auf sein Homedir gewährt, wenn der Netbios Domänenname ein anderer als "Hamburg" war ( logisch :o) )

 

Die Dialoge ("Öffnen", "Speichern") haben jetzt sinnvolle Filtermasken und Default-Fileextensions.

 

Wenn das Öffnen einer XLS (zum Benutzerimport) abgebrochen wurde gab es eine unschöne Fehlermeldung. Das Problem ist auch behoben.

 

MFG

Jens Warkentin / 01.10.2005

Link zu diesem Kommentar

Wichtg: 2 Fehler bereinigt. Bitte die aktuelle Version benutzen !!!

 

Hallo zusammen.

 

Beide AdsScripter-Plugins hatten noch Fehler in den generierten VB-Scripten.

 

Das CreateUser-Script hatte Probleme beim Zuweisen von NTFS-Rechten auf die Home-und Profile Verzeichnisse, wenn der Anmeldename Leerzeichen enthält.

 

Der Fehler ist behoben.

 

 

Schlimmer war der Fehler im PasswordTools-Scriptbuilder.

Das Flag "Kennwort läuft nie ab" wurde durch einen Zeilendrehen nicht berücksichtigt.

Somit hat das generierte VB-Script auch gnadenlos die Kennwörter der Dienstkonten und des Administrators zurückgesetzt.

 

Der Fehler ist erkannt und behoben.

 

 

Bitte verwendet die aktuellen Versionen von meiner Website. (Download-Link oben)

 

Danke und schöne Grüße,

Jens Warkentin

Link zu diesem Kommentar
  • 7 Monate später...

Hallo Leute,

 

für meinen AdsScripter ist ein neues Update verfügbar.

 

Änderungen (Hauptprogramm):

- NEU: das Programm läuft jetzt auch bei einer Auflösung kleiner 1024x768 sauber

- NEU: bei einer zu kleinen Auflösung kann das Programm mit Scrollbalken trotzdem noch verwendet werden

 

Funktionen / Änderungen (Plugin "CreateUser.ads"):

- kann Benutzerdaten aus Excel einlesen

- erstellt ein VB-Script, das die User im Active Directory erzeugt

- jeder User kann in zu 4 individuelle Gruppen gesteckt werden

- Gruppen werden erstellt falls nicht vorhanden

- kann optional eine OU angegeben werden, in der neu erstellte Gruppen erstellt werden

- pro Benutzer festgelegt werden, in welchem ADS Container das Benutzerkonto erstellt wird

- nicht vorhandene OU's werden durch das Script erstellt

- Homedirectories und Profilverzeichnisse können durch das Script erstellt und mit

den notwendigen Zugriffsrechten versehen werden

- ein Anmeldescript kann definiert werden

- dem Anmeldescript können Parameter übergeben werden

- es kann definiert werden, wie die Konten erstellt werden

(aktiviert/deaktiviert, Benutzer muss Kennwort beim Ersten anmelden änern oder nicht)

- NEU: obligarorische Profile werden unterstützt. Diese können durch den Admin angepasst und verbindlich zugewiesen werden (mandatory Profiles)

- NEU: obligarorische Terminalserver-Profile werden unterstützt

- NEU: Der Benutzername wird dem Anmeldescript nun geqouted (in Abführungszeichen) übergeben. Damit entfallen Probleme, wenn ein Benutzername Leerzeichen enthält

- NEU: Der Laufwerksbuchstabe für Homedirectory und Terminal-Homedirectory darf gleich sein.

 

Funktionen / Änderungen (Plugin "PasswordTools.ads"):

 

- unterscheiden ob bei dem AD-User das Flag "Kennwort läuft nie ab" gesetzt

ist oder nicht, und nur die User verändern, bei denen das Flag nicht gesetzt

ist (somit fasst das Script keine Dienst- und Funktionskonten an

und ändert auch nichts beim Admin ..)

 

- alle ADS Benutzer beim nächsten Login zum Ändern des Passwortes zwingen

(ausser mit Flag "Kennwort läuft nie ab")

 

- einzelne ADS Benutzer beim nächsten Login zum Ändern des Passwortes zwingen

(ausser mit Flag "Kennwort läuft nie ab")

 

- alle ADS Benutzern ein neues Kennwort verpassen und optional zum Ändern des

Passwortes zwingen (ausser mit Flag "Kennwort läuft nie ab")

 

- einzelnen ADS Benutzer ein neues Kennwort verpassen und optional zum Ändern des

Passwortes zwingen (ausser mit Flag "Kennwort läuft nie ab")

 

- Kontosperrungen für alle, bzw. einen bestimmten User zurücksetzen

(ausser mit Flag "Kennwort läuft nie ab")

 

Schöne Grüße,

Jens

Link zu diesem Kommentar
  • 3 Wochen später...
  • 1 Jahr später...

Hallo zusammen,

 

vor einiger Zeit durfte ich hier mein kleines Freeware-Tool "AdsScripter" zum generieren von ADSI Scripten vorstellen. Dieses wurde inzwischen über 1200 mal runtergeladen.

 

Hiermit möchte ich mich fur das erhaltene Feedback bedanken.

 

Ich habe der "beliebte" CreateUser Plugin (erstellt ein komplexes Script zum Anlegen von Benutzern im AD) sehr stark erweitert.

 

Das Update ist noch ganz frisch, aber gründlich getestet.

Ich würde mich freuen wenn Ihr wieder ein paar Kommentare dazu abgebt, damit ich irgendwann mal "Stoff" für die Version 3 habe ;) .

 

Hier eine eine Liste der Neuerungen.

 

neue Funktionen: CreateUser Plug-in V2.0

* Benutzer und Gruppen in verschachtelten OU Strukturen erstellen

* wahlweise vorhandene OUs im AD finden und Benutzer darin erstellen oder

* unterstützt deutsches und englische Gruppennamen

* fest vorgegebene Struktur benutzen

* LDAP Bezeichnungen werden automatisch generiert

* Script kann als „Update-Script“ für Massenänderungen im AD erstellt werden

* drei Update Modi wählbar

- überspringe existierende Benutzers

- bestehende User ändern, (definierte Attribute ändern, undefinierte Attribute nicht anfassen)

- bestehende User ändern, (definierte Attribute ändern, undefinierte Attribute auf MS Defaults setzen

* 10 benutzerdefinierte Gruppen in der Excel Vorlage

* unbegrenzt viele Gruppen in der CreateUser.ini (gelten für alle Benutzer)

* Plug-in ist nicht mehr so „zickig“ bei numerischen Werten in der Excel Vorlage

* Excel Template enthält viele aussagekräftige Kommentare

* detaillierte Log-Ausgaben im CScript Fenster

* VB-Code optimiert

* Scriptausführung direkt aus dem AdsScripter oder wie gewohnt über den VBS Export

* unterstützt das Scripten fast aller Benutzer-Attribute:

 

User Attribute:

personalTitle, givenName, initials, sn, displayName, cn, sAMAccountName, userPassword, ou, employeeID

physicalDeliveryOfficeName, title, department, company, streetAddress, postOfficeBox, postalCode,

l, st, co, c, telephoneNumber, otherTelephone, homePhone, otherHomePhone, mobile, otherMobile,

facsimileTelephoneNumber, otherFacsimileTelephoneNumber, ipPhone, otherIpPhone, pager, otherPager,

primaryInternationalISDNNumber, mail, info, wWWHomePage, description

 

Einwahlen (RAS,RADIUS)

msNPAllowDialin

 

Terminalservices Attribute:

allowLogon, EnableRemoteControl, MaxIdleTime, MaxDisconnectionTime, MaxConnectionTime,

ReconnectionAction, BrokenConnectionAction, TerminalServicesInitialProgram, TerminalServicesWorkDirectory,

ConnectClientDrivesAtLogon, ConnectClientPrintersAtLogon, DefaultToMainPrinter

 

 

 

Fragt einfach, falls ich die eine oder andere Option nicht einfach genug erklärt habe oder Dinge anliegen.

 

 

Schöne Grüße,

Jens

bearbeitet von blub
Link zu diesem Kommentar
  • 7 Monate später...

Hallo,

 

Super Tool, vielen Dank!

 

falls noch Vorschläge gesucht werden:

- Erweiterung für Exchange

- Statische Felder, dass man z.B. bei Company einfach immer "Firma XY" eintragen kann, ohne eine Excel-Spalte dafür angeben zu müssen.

 

Ich habe derzeit das Problem, dass meine User Accounts selbst dann deaktiviert sind, wenn ich die Option nicht eingeschaltet habe, vlt ein Bug?

 

Danke, Shrek

Link zu diesem Kommentar
  • 1 Monat später...
Hallo,

Ich habe derzeit das Problem, dass meine User Accounts selbst dann deaktiviert sind, wenn ich die Option nicht eingeschaltet habe, vlt ein Bug?

 

Danke, Shrek

 

Sorry für die späte Antwort.

Ich habe keine Email-Nachricht bekommen. Das Thema ist irgendwie aus meiner "Beobachtungsliste" verschwunden.

 

Den Effekt mit den deaktivierten Benutzern hatte ich damals zeitweise beim Windows 2000 Server, wenn man als Script-OS Win2003 ausgewählt hat. Unter Windows Server 2003 hatte ich das Problem bisher noch nicht.

 

Die Idee mit den "statischen Feldern" gefällt mit gut. Wenn ich mal wieder etwas Zeit habe, dann baue ich das mit ein.

 

MFG

Jens

Link zu diesem Kommentar
  • 1 Monat später...

Hallo jens_w2000,

habe mir das grade testweise mal runtergeladen,

auf den ersten Blick fällt mir nur eins auf...

 

In der Spalte AI steht folgendes drin:

 

=VERKETTEN(B2;".";WENN(C2<>"";VERKETTEN(C2;".");"");D2;"@MaxMuster.de")

wenn man ein zusätzliches Feld anlegt, in das ich die URL OHNE www

reichschreiben kann, sollte dies "automatisch" gehen.

Beispiel:

 

=VERKETTEN(B2;".";WENN(C2<>"";VERKETTEN(C2;".");"");D2;"@";[b]AK2[/b])

 

in diesem Beispiel würde jetzt die Email allerdings

Max.von.Mustermann[ät]http://www.maxmustermann.de

lauten. Das dies so nicht funktioniert ist klar.

 

Ein zusätliches Feld in dem man nun "maxmuster.de" einträgt und dies

dann Abfragen lässt, stellt die Emailadresse richtig dar:)

 

=VERKETTEN(B2;".";WENN(C2<>"";VERKETTEN(C2;".");"");D2;"@";[b]BK2[/b])

Inhalt von BK2 = maxmuster.de

 

Dies wäre dann wieder eine Zentrale Stelle um die Email zu ändern, ohne jede Zeile einzeln zu ändern. Ausser man "zieht" das Feld nach unten...

 

Wenn man keine Zweigstellen hat, könnte man z.B. eine Tabelle

Stammdaten erstellen, dort kommen für ALLE User die Daten rein,

welche GLEICH sind, wie:

- Homepage

- Firmenanschrift

- die URL für Mailadresse

usw.

 

Ich bin mir schon darüber im klaren, das dies bei Firmen mit Zweigstellen

nicht so einfach zu händeln ist.

 

Ist halt nur so ein Gedanke von mir, den ich mal zu "Papier" bringen wollte...

Link zu diesem Kommentar
  • 5 Monate später...

ich würde das manuell machen, da ich es kurzfristig benötige. kannst du mir nur verraten, wo ich den befehl dazu finde? ich habe mich schon wund gegoogelt :-(

 

das einzigste was ich bisher rausgefunden habe ist, dass UserCannotChangePassword auf true gesetzt werden müsste. nur bei welchem objekt ?

 

reicht es, wenn ich sowas einbaue?

 

IF SET_USER_CANNOT_CHANGE_PASSWORD_ENABLED = 1 THEN

. UserCannotChangePassword = TRUE

Link zu diesem Kommentar

"user_cannot_change_password" ist kein Flag oder Attribut.

So wie ich das rausgelesen habe handelt es sich dabei um ein Objekt-Recht (also einen ACL Eintrag auf dem User-Objekt). Dieser Eintrag kann nicht direkt gesetzt werden.

 

Hier findest du im MSDN einen Beispiel-Code für den WinNT Provider.

Modifying User Cannot Change Password (WinNT Provider) (Windows)

 

Vermutlich wird es über den LDAP Privider etwas eleganter gehen.

Beispiele und Infos findest du ebenfalls im MSDN unter folgendem Link

http://msdn.microsoft.com/en-us/library/aa746398.aspx

Link zu diesem Kommentar
Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Schreibe einen Kommentar

Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor-Fenster leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...