Public Shared Function GetUserMemberOf(ByVal domain As String, ByVal username As String, ByVal password As String, Optional ByRef exeption As Exception = Nothing) As Collections.Generic.List(Of String) Dim searcher As DirectorySearcher = Nothing Dim colEntry As New Collections.Generic.List(Of String) Try 'Objet de notre utilisateur de la hiérarchie Active Directory. searcher = New DirectorySearcher(New DirectoryEntry("LDAP://" & domain, username, password)) 'On va chercher ici un objet de type user et dont le nom d'ouverture de session = <username>. searcher.Filter = String.Concat("(&(objectClass=User) (sAMAccountName=", username, "))") 'Ne récupère que la propriété MemberOf. searcher.PropertiesToLoad.Add("MemberOf") 'Recherche et retourne la première entrée trouvée. Dim result As SearchResult = searcher.FindOne 'Parcours le contenu de la propriété MemberOf de notre entrée trouvée. For i As Integer = 0 To result.Properties("MemberOf").Count - 1 'Récupère la chaine LDAP. Dim sProp As String = result.Properties("MemberOf")(i) 'Extrait le nom du groupe de la chaine. colEntry.Add(sProp.Substring(3, sProp.IndexOf(",") - 3)) Next Catch ex As Exception exeption = ex Finally 'Libère les ressources. searcher.Dispose() End Try Return colEntry End Function
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.