AD 中的配置可分辨名称被篡改了吗?

AD 中的配置可分辨名称被篡改了吗?

我们产品的一位用户遇到了一个问题,该问题是由 AD 中配置对象的 DN 引起的。我们采用一种相当静态的查找方法来查找配置对象,因此失败了。

假设AD的域名是foo.bar.example.com。因此,配置的预期DN应该是CN=Configuration,DC=foo,DC=bar,DC=example,DC=com,对吗?

但不知何故,此用户的配置 DN 缺少一个值: CN=Configuration,DC=bar,DC=example,DC=com

您知道我们如何重现此问题吗(或者它是否常见?)?

答案1

看起来根配置与 bar.example.com 域相关联,而 foo 只是一个子域。为确保万无一失,您可以通过编程获取配置可分辨名称:

// you may need to specify username/password here as well with another 
// constructor overload.  Try any of the following:
// DirectoryEntry root = new DirectoryEntry("LDAP://RootDSE", user, pwd); 
// DirectoryEntry root = new DirectoryEntry("LDAP://ADServer/RootDSE"); 
// DirectoryEntry root = new DirectoryEntry("LDAP://ADServer/RootDSE", user, pwd); 
DirectoryEntry root = new DirectoryEntry("LDAP://RootDSE"); 


string configDN = root.Properties["configurationNamingContext"].Value.ToString();

相关内容