代码之家  ›  专栏  ›  技术社区  ›  Will I Am

搜索全局目录

  •  0
  • Will I Am  · 技术社区  · 16 年前

    如果我对全局目录进行查询(我计划使用sds.p),那么为了搜索整个gc,起始路径应该是什么?

    例如,我想枚举GC中的所有用户。 假设我的GC有3个域(一个父域,两个子域)的用户:

    TEST.COM
       ONE.TEST.COM
       TWO.TEST.COM
    

    我在one.test.com的电脑上。我不想硬编码dc=xxx,dc=yyy,我想在运行时确定。

    蒂亚! -威尔

    1 回复  |  直到 8 年前
        1
  •  0
  •   sds Niraj Rajbhandari    8 年前

    下面是一个查询全局目录的示例函数:

    class Program
        {
    
            static void Main()
            {
    
                DirectoryEntry entry = new DirectoryEntry("GC://dcserver.domain.local",
                                                           "utility",
                                                           "somepassword",
                                                           AuthenticationTypes.Secure );
    
                const string searchString = "(&(objectCategory=person)(objectClass=user))";
    
                DirectorySearcher searcher = new DirectorySearcher(entry, 
                                                                   searchString, 
                                                                   new string[] { "sAMAccountName", "cn" } );
    
                SearchResultCollection resultCollection = searcher.FindAll( );
    
                foreach ( SearchResult result in resultCollection )
                {
                    Console.WriteLine( result.Path + "\n" + 
                                       result.Properties["cn"][0] + "\n" + 
                                       result.Properties["samaccountname"][0]  );
                }
    
                Console.ReadLine( );
    
            }
       }
    
    推荐文章