2013-05-15 2 views
0

В моем приложении мне нужно получить электронную почту пользователей из Active Directory.System.DirectoryServices use И ограничение

Я столкнулся с пространством имен System.DirectoryServices для доступа к Active Directory. Я понятия не имею, как это работает. У меня мало вопросов.

Могу ли я просто использовать это пространство имен и получить доступ к AD с правильными запросами? Есть ли предпосылка как доступ к LDAP и т.д.

Пожалуйста, дайте мне знать, как это на самом деле работает

FYI Я использую .net 4.0

ответ

1

Если вы на .NET 3.5 и выше, вы должны проверить пространство имен (S.DS.AM). Читайте об этом здесь:

В принципе, вы можете определить контекст домена и легко найти пользователей и/или групп в AD:

// set up domain context 
using (PrincipalContext ctx = new PrincipalContext(ContextType.Domain)) 
{ 
    // find a user 
    UserPrincipal user = UserPrincipal.FindByIdentity(ctx, "SomeUserName"); 

    if(user != null) 
    { 
     // do something here....  
    } 

    // find the group in question 
    GroupPrincipal group = GroupPrincipal.FindByIdentity(ctx, "YourGroupNameHere"); 

    // if found.... 
    if (group != null) 
    { 
     // iterate over members 
     foreach (Principal p in group.GetMembers()) 
     { 
      Console.WriteLine("{0}: {1}", p.StructuralObjectClass, p.DisplayName); 
      // do whatever you need to do to those members 
     } 
    } 
} 

новый S.DS.AM позволяет очень легко играть с пользователями и группами в AD!

Смежные вопросы