Ldap-Abfrage via VBS-Script liefert einen falschen Wert
ich stehe vor einem Burnout mit dem Problem!
Hallo zusammen!
ich habe es hingekriegt die richtigen Werte aus Ldap auszulesen. Das funktioniert aber nicht immer.
Wir haben in der Firma einen Benutzer Herrn Mustermann, der gleich zwei UID's hat und an der Stelle stolpert mein Script.
Alle Benutzer, die vor Herrn Mustermann vorkommen, bekommen richtige Werte zurück. Alle die nach Herrn Mustermann vorkommen, vererben die Telefonnummer von Hr. Mustermann.
Erkennt jemand einen Fehler im Script? Ist es ein Fehler des Skriptes oder ist es strick unzulässig zwei UID's bei einem Benutzer zu haben?
Zum Script: UID in Ldap = %username%
Danke für jeden Tipp!!!
Hallo zusammen!
ich habe es hingekriegt die richtigen Werte aus Ldap auszulesen. Das funktioniert aber nicht immer.
Wir haben in der Firma einen Benutzer Herrn Mustermann, der gleich zwei UID's hat und an der Stelle stolpert mein Script.
Alle Benutzer, die vor Herrn Mustermann vorkommen, bekommen richtige Werte zurück. Alle die nach Herrn Mustermann vorkommen, vererben die Telefonnummer von Hr. Mustermann.
Erkennt jemand einen Fehler im Script? Ist es ein Fehler des Skriptes oder ist es strick unzulässig zwei UID's bei einem Benutzer zu haben?
Zum Script: UID in Ldap = %username%
set WshShell = WScript.CreateObject("WScript.Shell")
UserName = WshShell.ExpandEnvironmentStrings("%username%")
UserName = UCase(UserName)
'-----------------------------------------------------------------
'Zugangsdaten zum Ldap:
ldapName = "ldapserver"
ldapPass = "ldappwd"
ldapServer = "bar.foo.org:389/ou=ouwert,o=owert"
'-----------------------------------------------------------------
sRoot = "LDAP://" & ldapServer
Set dso = GetObject("LDAP:")
Set objRS = CreateObject("adodb.recordset")
On Error Resume Next
Set xResult = dso.OpenDSObject(sRoot, ldapName, ldapPass, ADS_SECURE_AUTHENTICATION)
For Each obj In xResult
if obj.uid = UserName then
strTel = obj.telephonenumber
WScript.Echo "UserName:" & UserName & vbCrLF & "Tel:" & strTel & vbCrLF & "name:" & " " & obj.name
Exit For
end if
Next
Set WshShell = Nothing
Set objServer = Nothing
Danke für jeden Tipp!!!
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 144760
Url: https://administrator.de/contentid/144760
Ausgedruckt am: 23.11.2024 um 02:11 Uhr