对 return 用户的 LDAP 查询

LDAP query to return user

我正在尝试使用 LDAP 从专有名称检索 Active Directory 用户记录。这是我发送的查询...

(&(objectCategory=person)(objectClass=user)(CN=George Hutchins,OU=Contractors,DC=MYCO,DC=LOCAL))

但是,这个returns没有结果。

如果我使用...

(&(objectCategory=person)(objectClass=user)(CN=George Hutchins))

我得到返回的记录。我只会使用后一个查询,但是如果有两个 George Hutchins,那么我将得到 2 个记录,而不是我要查找的那个。

有没有一种方法可以查询到具有专有名称的确切用户 (CN=George Hutchins,OU=Contractors,DC=MYCO,DC=LOCAL)?顺便说一句,我知道这个字符串是正确的,因为我从 Active Directory 中的组记录(成员 属性)中提取了它。

完全可分辨名称在 LDAP 中始终是唯一的。

一个简单的查询类似于:

(&(objectCategory=person)(objectClass=user))

并将搜索库设置为:

(CN=George Hutchins,OU=Contractors,DC=MYCO,DC=LOCAL)

搜索范围:BASE (0) 在您的 Search Request 内应该可以。

-吉姆

您可以使用 distinguishedName 属性专门查询:

(distinguishedName=CN=George Hutchins,OU=Contractors,DC=MYCO,DC=LOCAL)

您的原始查询无效的原因是这部分:(CN=George Hutchins,OU=Contractors,DC=MYCO,DC=LOCAL)。要求 AD 到 return 的是具有 CN 属性且值为 George Hutchins,OU=Contractors,DC=MYCO,DC=LOCAL 的 LDAP 对象。但是,对他来说CN就只是George Hutchins