c# - 使用 LDAP 查询从我公司的所有林中获取所有域

标签 c# .net dns active-directory ldap

前言:

我正在使用两个域 Controller (dc1 和 dc2)。我正在使用注册到根域 dc1 的域,并通过在 CN=Partitions,CN=Configuration,DC=dc1,dc=local 中执行搜索来简单地请求其林中的所有域。

我还可以通过查找“trustedDomain”类型的对象,从“CN=System”下的默认命名上下文中获取受信任林 (dc2) 的根域 dns。

问题:

问题是我无法从 dc1 中找到的事件目录信息中看到/找到根域 dc2 的其他域(子域)。为了获得这些域,我目前绑定(bind)到这个域 Controller (dc2) 并执行与我在域 Controller dc1 (CN=Partitions,CN=Configuration,DC=dc2,dc=local) 中所做的相同的搜索以获取其所有 children 。

我必须使用此绑定(bind)到其他林中的每个根域才能请求其所有域吗?有更好的方法吗?我读到有关推荐的内容,这似乎可以解决我的问题,但我不确定它是否是,我也不确定应该如何使用它。

注意:我在 C# 中使用 DirectoryEntry 类。

最佳答案

不行,你不能通过在forest2中搜索得到forest1的所有域,
至少据我所知。

搜索“trustedDomain”只会为您提供直接涉及信任关系的域。例如,对于森林信托,您只能获得根而不是其子级。

所以,我认为你必须搜索每个森林。
一种更简单的方法是在每个森林的 GC 中搜索所有“domainDNS”对象。分区还包括那些架构和配置分区。

关于c# - 使用 LDAP 查询从我公司的所有林中获取所有域,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28192795/

相关文章:

c# - 从 .Net 控制台应用程序访问 Moodle API

c# - Sorting List导致转换 'void'错误

ssl - 使域指向另一个 https 域

c# - 使用 C# 选择列表框中的项目

C# 字符串生成器

c# - 排除在调试中构建的文件

c# - 如何正确捕获调用存储过程的返回值

c# - MVC 存储库 - 域模型与实体模型

ruby-on-rails - 如何获取我的 Heroku 站点的 DNS 记录以与 Google Apps 配合使用?

azure - 将域名连接到azure vm的ip