【问题标题】:Active Directory Query using LDAP Query in custom search在自定义搜索中使用 LDAP 查询的 Active Directory 查询
【发布时间】:2019-03-07 12:42:56
【问题描述】:

我正在处理的域中的一些用户没有分配经理或没有职位,因此我尝试在 definequery>customsearch>advanced 选项卡中使用此 LDAP 查询创建一个新查询:

(&(objectCategory=user)(objectClass=user))(|(!manager=*)(!title=*)

即使我知道它们存在,这也会返回零结果。使用自定义搜索会创建相同的搜索字符串并返回零个结果。我根据其他地方的研究尝试过这个,它也返回零结果。

(&(objectCategory=person)(objectClass=user))(|(!manager=*)(!title=*)

我做错了什么?

另外我只想在特定文件夹及其子文件夹中搜索,我应该预先添加这个:

(|(OU=Innsbruck)(OU=Totnes)(OU=Dueren))

它们位于域的正下方,并且每个位置都有自己的计算机、组、用户子文件夹。

【问题讨论】:

    标签: active-directory ldap-query


    【解决方案1】:

    您的查询无效。该窗口不会告诉您 - 它只会给出零结果。

    您缺少右括号,您需要将 OR 条件放在 AND 条件中。而且您还需要使用(objectCategory=person),而不是(objectCategory=user)。您真的不需要(objectCategory=person),因为(objectClass=user) 足以将搜索限制为用户对象,但这并没有什么坏处。

    它应该是这样的:

    (&(objectCategory=person)(objectClass=user)(|(!manager=*)(!title=*)))
    

    我通常会将我的查询粘贴到Notepad++,它会突出显示匹配的括号,因此很容易找到丢失的括号。或者,您可以将其拆分为多行,以便于阅读和发现错误:

    (&
        (objectCategory=person)
        (objectClass=user)
        (|
            (!manager=*)
            (!title=*)
        )
    )
    

    无论您如何搜索(通过用户和计算机 UI 或通过代码),您一次只能搜索一个 OU。没有OU 属性或您可以在查询中使用以限制特定OU 的任何其他属性。

    在 UI 中,您可以点击右上角的“浏览”来选择要搜索的 OU。

    如果您在代码中执行此操作,您可以做几件事来将其限制为特定的 OU:

    1. 单独搜索每个 OU(如果需要,您可以选择将搜索范围设置为不搜索子 OU),或者
    2. 搜索整个域,然后查看每个结果的distinguishedName 属性,并丢弃来自您不想要的 OU 的结果。

    选项 #2 可能会执行得更快,因为它的网络请求更少。

    【讨论】:

    • 我看到我把右括号放在了错误的位置 - 我想我需要关闭 '&' 而不是整个查询。关于 objectCategory=user 和 objectCategory=person 之间的区别的任何想法?关于“OU=...”的使用?
    • 对不起!我没有注意到objectCategory=user。我只是盲目地复制和粘贴:) 但这行不通。我错过了你问题的最后一部分。我更新了我对这两个问题的答案。
    【解决方案2】:

    在我看来,过滤器不符合 RFC 4515:搜索过滤器的 LDAP 字符串表示。 可能是 AD 并且您使用的工具正在接受它,但 NOT 过滤器应采用 (!(manager=*)) 的形式。

    (&(objectCategory=person)(objectClass=user)(|(!(manager=*))(!(title=*))))

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-09-29
      • 2014-07-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多