Feedback

C# - LDAP - Liefert eine Liste mit allen Gruppen zu einem User

Veröffentlicht von am 21.11.2007
(1 Bewertungen)
Liefert eine Liste zurück mit allen Gruppen zu denen ein Benutzer gehört.
using System.DirectoryServices;
using System.DirectoryServices.ActiveDirectory;

public static List<String> GetUserMemberOf(string domain, string username, string password)
{
    DirectorySearcher searcher = null;
    List<string> lMembers = new List<string>();
    try
    {
        searcher = new DirectorySearcher(new DirectoryEntry(string.Concat(@"LDAP://", domain), username, password));
        searcher.Filter = string.Concat(@"(&(objectClass=User) (sAMAccountName=", username, "))"); searcher.PropertiesToLoad.Add(
         @"MemberOf");
        SearchResult result = searcher.FindOne();
        for (int i = 0; i < result.Properties[@"MemberOf"].Count; i++)
        {
            string sProp = result.Properties[@"MemberOf"][i].ToString(); lMembers.Add(sProp.Substring(3, sProp.IndexOf(@",") - 3));
        }

    }
    catch (Exception)
    {
        throw;
    }

    finally
    {
        searcher.Dispose();
    }

    return lMembers;
}
Abgelegt unter LDAP, Gruppen, Domäne, Active Directory, AD.

Kommentare zum Snippet

 

Logge dich ein, um hier zu kommentieren!