kaffebone
Goto Top

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%


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!!!

Content-Key: 144760

Url: https://administrator.de/contentid/144760

Printed on: April 24, 2024 at 13:04 o'clock