RODC环境下Forest.GetCurrentForest的使用
Posted
技术标签:
【中文标题】RODC环境下Forest.GetCurrentForest的使用【英文标题】:Use of Forest.GetCurrentForest in RODC environment 【发布时间】:2012-01-31 11:51:52 【问题描述】:在与只读域控制器通信时,我在使用 Forest.GetCurrentForest() 方法时遇到问题。
抛出的异常是:
System.DirectoryServices.ActiveDirectory.ActiveDirectoryServerDownException:服务器无法运行。
注意:与 RWDC 通信时一切正常。
以前,为了解决与 RODC 通信时的其他问题,我们必须修改创建 DirectoryEntry 对象的方式,使用 AuthenticationType.ReadOnlyServer 标志。但是我已经看到(使用反射器)GetCurrentForest() 方法使用 Utils 类创建自己的 DirectoryEntry 对象,而后者又使用 DefaultAuthType。
所以,我的问题是:有谁知道如何设置/修改 DefaultAuthType 以便它可以返回所需的身份验证类型?有一个更好的方法吗?这段代码的目的只是让服务器可以看到可用域的列表。
谢谢,
本
【问题讨论】:
【参考方案1】:嗯,似乎没有一个简单的答案。最后我们重写了代码以不使用域/森林对象...
【讨论】:
【参考方案2】:我为“克服”这个问题所做的事情是,我首先尝试获取Forest.GetCurrentForest()
,如果抛出异常,然后我使用Domain.GetComputerDomain()
作为最后一个解决方案,当然,列表现在只包含网络服务器已加入。
【讨论】:
以上是关于RODC环境下Forest.GetCurrentForest的使用的主要内容,如果未能解决你的问题,请参考以下文章
Windows Server 2016-部署RODC只读域控制器
学习总结-Active Directory 域服务管理07-RODC服务器
Windows Server 2016-Active Directory域服务端口汇总