【发布时间】:2012-07-19 22:02:25
【问题描述】:
我目前有几种方法:
public ADHelper()
{
connection = InitializeConnection();
}
private DirectoryEntry InitializeConnection()
{
DirectoryEntry ldapConnection = new DirectoryEntry("LDAP://servername.domain.com:389/DC=domain,DC=com");
ldapConnection.Username = "user"
ldapConnection.Password = "password";
ldapConnection.AuthenticationType = AuthenticationTypes.Secure;
return ldapConnection;
}
我想创建另一种方法来检查该域中是否存在对象。我目前正在这样做:
public bool Exists(string objectPath)
{
bool found = DirectoryEntry.Exists("LDAP://" + objectPath);
return found;
}
但这迫使我指定整个 LDAP 字符串。我想简单地在 Exists() 方法中使用 OU 和 CN 参数扩展初始 ldapConnection 。有没有办法在不公开 Initialize() 方法的情况下实现这一点?
非常感谢!
【问题讨论】:
-
如果您只需要基于
CN搜索DirectoryEntry,您可以使用DirectorySearcher来完成。
标签: active-directory ldap active-directory-group