0

在与只读域控制器通信时,我在使用 Forest.GetCurrentForest() 方法时遇到了问题。

抛出的异常是:

System.DirectoryServices.ActiveDirectory.ActiveDirectoryServerDownException:服务器无法运行。

注意:与 RWDC 通信时一切正常。

以前,为了解决与 RODC 通信时的其他问题,我们必须修改创建 DirectoryEntry 对象的方式,使用 AuthenticationType.ReadOnlyServer 标志。但是,我已经看到(使用反射器)GetCurrentForest() 方法使用 Utils 类创建自己的 DirectoryEntry 对象,而 Utils 类又使用 DefaultAuthType。

所以,我的问题是:有谁知道如何设置/修改 DefaultAuthType 以便它可以返回所需的身份验证类型?有一个更好的方法吗?这段代码的目的只是获取服务器可见的可用域列表。

谢谢,

4

2 回答 2

0

好吧,似乎没有一个简单的答案。最后我们重写了代码以不使用域/森林对象......

于 2012-02-24T08:59:27.737 回答
0

我为“克服”这个问题所做的事情是,我首先尝试获取Forest.GetCurrentForest(),如果抛出异常,然后我使用Domain.GetComputerDomain()最后一个解决方案,当然,列表现在只包含 Web 服务器加入的域。

于 2015-09-02T09:57:52.083 回答