Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Informationen auslesen und damit Benutzer im AD erstellen.

Frage Entwicklung VB for Applications

Mitglied: depravity

depravity (Level 1) - Jetzt verbinden

22.07.2010 um 08:11 Uhr, 7459 Aufrufe, 6 Kommentare

Hallo,

ich habe in der Schule die Aufgabe bekommen ein VBscript zu schreiben, welches zunächst verschiedene Benutzerinformationen aus einer SQL-Datenbank ausliest. Mit diesen Benutzerinformationen sollen über eine Schleife die Benutzer im Acitve Directory angelegt werden. Das Script habe ich soweit erstellt. Nur leider bekomme ich immer wieder die Fehlermeldung aus Zeile 20 "Es wurde eine ungültige dn-Syntax angegeben." Ich hoffe ihr könnt mir etwas Hilfestellung zu diesem Problem zukommen lassen.

Hier der Quellcode:

strConnection ="dbzugriff"
Set adoDataConn= CreateObject("ADODB.Connection")
adoDataConn.open strConnection
strQuery= "SELECT * FROM benutzerneu;"
Set query = adoDataConn.execute(strQuery)
strPfad = "LDAP://192.168.1.1/ou=test,dc=schule"
strAdmin = "cn=Administrator,cn=Users,dc=schule"
pwd= InputBox("Bitte geben Sie das Administratorkennwort ein:","Authentifizierung","Passwort")
Set adsNamenraum = GetObject("LDAP:")
Set adsContainer = adsNamenraum.openDSObject(strPfad,strAdmin,pwd,0)
Do While Not query.eof
benutzername = CStr(query.fields.item("benutzername"))
vorname = CStr(query.fields.item("vorname"))
nachname = CStr(query.fields.item("nachname"))
passwort = CStr(query.fields.item("passwort"))
beschreibung = CStr(query.fields.item("beschreibung"))
Set adsUser = adsContainer.Create("user", benutzername)
bla = "cn=" & benutzername
adsUser.put "sAMAccountName", bla
adsUser.setInfo
adsUser.accountDisabled = false
adsUser.sn = nachname
adsUser.givenName = vorname
adsUser.description = beschreibung
adsUser.setPassword passwort
adsUser.setInfo
query.moveNext 'Nächster Antwortdatensatz
MsgBox "Der Benutzer " & benutzername & "wurde erfolgreich angelegt."
Loop
query.close

Grüße depra
Mitglied: bastla
22.07.2010 um 09:44 Uhr
Hallo depravity und willkommen im Forum!

Unter der Annahme, dass im Feld "benutzername" kein"cn=" enthalten ist, würde ich die Zeilen 17 bis 19 (ließen sich übrigens bei Verwendung von "Code"-Formatierung leichter lokalisieren) auf
01.
bla = "cn=" & benutzername 
02.
Set adsUser = adsContainer.Create("user", bla) 
03.
adsUser.put "sAMAccountName", benutzername
ändern ...

Grüße
bastla
Bitte warten ..
Mitglied: depravity
22.07.2010 um 10:34 Uhr
Hallo,

genau das war der Fehler an dieser Stelle. Dankeschön für den Tipp.

Einziges Problem was jetzt noch besteht ist dass das Script bei der Quellcodezeile
"adsUser.setPassword passwort"
die Fehlermeldung "Mindestens ein Eingabeparameter ist ungültig" ausgibt.

Der Befehl an sich müsste doch richtig sein und wenn ich die Variable "Passwort" ausgeben lasse stimmt auch alles.

Grüße
depra
Bitte warten ..
Mitglied: depravity
22.07.2010 um 14:08 Uhr
Hab den Fehler gefunden. Das Script läuft nun durch.
Nochmals dankeschön für die Hilfe!

Grüße
depra
Bitte warten ..
Mitglied: bastla
22.07.2010 um 14:29 Uhr
Hallo dapravity!
Hab den Fehler gefunden.
Auch dafür sollst Du ja üben ...

Woran lag's denn?

Grüße
bastla
Bitte warten ..
Mitglied: depravity
22.07.2010 um 14:46 Uhr
Also ich vermute dass die Passwörter aus der Datenbank nicht den Vorgaben aus der Default Domain Policy entsprochen haben. Nachdem ich dann etwas längere Passwörter verwendet habe ging es. Allerdings habe ich jetzt das Problem, dass die Fehlermeldung nach dem ersten Schleifendurchlauf erneut auftritt. Der erste Benutzer wird ohne Probleme angelegt und beim zweiten Benutzer bricht das Script bei adsUser.setPassword ab. Warum es das tut, daran rätsel ich gerade noch.

Grüße
depra
Bitte warten ..
Mitglied: RedRabbit
23.07.2010 um 07:19 Uhr
// edit sagt, meine Idee war Blödsinn. Sorry fürs posten.
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Mehrere AD Benutzer aus CSV Datei mit PowerShell erstellen (1)

Frage von windelterrorist zum Thema Batch & Shell ...

Batch & Shell
gelöst AD-Benutzer per Shell auslesen und vergleichen (8)

Frage von ReneBue zum Thema Batch & Shell ...

Windows Server
gelöst Account-Sperrungen eines AD-Users auslesen (2)

Frage von MissJones zum Thema Windows Server ...

Windows Userverwaltung
gelöst AD-Benutzer löschen (3)

Frage von Peterz zum Thema Windows Userverwaltung ...

Neue Wissensbeiträge
Sicherheit

How I hacked hundreds of companies through their helpdesk

Information von SeaStorm zum Thema Sicherheit ...

Erkennung und -Abwehr

Ccleaner-Angriff war nur auf große Unternehmen gemünzt

(10)

Information von Lochkartenstanzer zum Thema Erkennung und -Abwehr ...

Sicherheit

Eventuell neue Lücke in Intels ME

Information von sabines zum Thema Sicherheit ...

Heiß diskutierte Inhalte
Humor (lol)
Freidach Beitrag (36)

Frage von Penny.Cilin zum Thema Humor (lol) ...

Windows 7
SSD - Win7 Lags (19)

Frage von ph5555 zum Thema Windows 7 ...