LDAP, Get User By GUID/SID
Jeg er igang med at lave en Active Directory synkroniserings routine, hvor jeg har behov for at have en funktion, som kan hente en bruger via SID/GUID.----- KODE START -----
Dim LDAPConn As New ADODB.Connection
Dim LDAPResult As ADODB.Recordset
Dim LDAPRoot As IADs
Dim LDAPDomain As IADs
Dim LDAPQuery As String
GUID = Mid(GUID, 2, Len(GUID) - 2)
Set LDAPRoot = GetObject("LDAP://rootDSE")
Set LDAPDomain = GetObject("LDAP://" & LDAPRoot.Get("defaultNamingContext"))
LDAPQuery = "<" & LDAPDomain.ADsPath & ">"
LDAPQuery = LDAPQuery & ";(&(objectClass=person)(Assoc-NT-Account=" & GUID & "))"
LDAPQuery = LDAPQuery & ";name"
LDAPQuery = LDAPQuery & ";subtree"
LDAPConn.Open "Data Source=Active Directory Provider;Provider=ADsDSOObject"
Set LDAPResult = LDAPConn.Execute(LDAPQuery)
If Not LDAPResult.EOF Then
While Not LDAPResult.EOF
MsgBox ("Name=" & LDAPResult("name"))
LDAPResult.MoveNext
Wend
End If
LDAPResult.Close
LDAPConn.Close
----- KODE SLUT -----
Problemet er, at jeg ikke er helt sikker på at min forespørgsel er korrekt. Mit recordset bliver hvertfald EndOfFile.
Håber nogen kan hjælpe mig!
På forhånd tak!