2013-03-06 55 views
0

我有一個返回AD組的用戶是在列表的功能。如何獲得AD組的用戶在指定的用戶名和域名

public static List<string> GetGroupNames(string userName) 
    { 

     using (var context = new PrincipalContext(ContextType.Domain, Environment.UserDomainName)) 
     { 
      using (var userPrincipal = UserPrincipal.FindByIdentity(context, userName)) 
      { 
       var groupSearch = userPrincipal.GetGroups(context); 
       var result = new List<string>(); 
       groupSearch.ToList().ForEach(sr => result.Add(sr.SamAccountName)); 

       return result; 
      } 

     } 
    } 

這是工作,我期望的那樣。我想更新這個函數,所以我可以傳遞一個LDAP路徑來指定我想查詢的域。

我已經搜索了幾個小時,可以找到任何指針(即使我確定答案在那裏!)我真的很感謝這裏的任何幫助。

+0

也許我錯了,但是你只是想用參數替換'Environment.UserDomainName'嗎? – StrubT 2013-03-06 14:44:11

+0

@StrubT它是那些日子之一!是的,這正是我應該做的!咄! :) – Fred 2013-03-06 15:53:18

回答

1

您可以添加一個新參數,比如string domainName並將其傳遞給new PrincipalContext()而不是Environment.UserDomainName

相關問題