我需要跨林的所有DC进行LDAP查询。我找到了类似的post,其代码如下:
using (Forest currentForest = Forest.GetCurrentForest())
{
using (GlobalCatalog globalCatalog = currentForest.FindGlobalCatalog())
{
using (DirectorySearcher searcher = globalCatalog.GetDirectorySearcher())
{
searcher.Filter = "filter to verify existence of user account according to supplied sid";
SearchResult result = searcher.FindOne();
return (result != null);
}
}
}
以上代码适用于我的测试场景。这是跨域查询信息的正确方法吗?还有很多其他帖子,他们手动输入GC位置或搜索域名列表。因此,有什么我应该注意或者这个代码可能出错吗?
答案 0 :(得分:0)
使用Domains
的{{1}}属性遍历域,然后遍历System.DirectoryServices.ActiveDirectory.Forest
DomainControllers
属性,以通过域控制器进行迭代,在每个域上运行您想要的任何查询