搜索

第 3 章 LDAP 搜索过滤器

download PDF

搜索过滤器选择搜索操作返回的特定条目。您可以在 ldapsearch 命令行工具或 Directory Server web 控制台中使用搜索过滤器。

目录服务器根据属性值对存储来搜索条目,而不是根据这些条目的可分辨名称(DN)中使用的属性。例如,如果条目具有 DN uid=user_name,ou=People, dc=example,dc=com,则仅在此条目中存在 attribute-value 对 dc:example 时搜索 dc=example。

使用 ldapsearch 时,您可以在一个文件中定义多个搜索过滤器,每个过滤器在单独的行中。或者,您可以直接在命令行中指定搜索过滤器。

搜索过滤器具有以下基本语法:

(<attribute><operator><value>)

例如,搜索过滤器 (employeeNumber &gt;= 500)employeeNumber 作为属性,& gt;= 作为 Operator,500 作为值。

带有匹配规则的搜索过滤器具有以下语法:

(<attribute>:<matching_rule>:=<value>)

例如,搜索过滤器 (givenName:caseExactMatch:=Daniel) 具有 givenName 作为属性,caseExact Match 作为匹配规则,Daniel 作为值。

您可以定义将不同属性与布尔值运算符结合使用的过滤器。

3.1. 使用 LDAP 搜索过滤器中的属性

基本搜索查找条目中存在属性或特定值。搜索可以以多种方式查找条目的属性:

  • 检查属性是否存在(下级搜索)。存在搜索使用星号(*)返回设置特定属性的每个条目,而不考虑值。

    例如," (manager.4-1.) " 过滤器返回具有 manager 属性的每个条目。

  • 匹配确切的属性值(例如,搜索质量)。平等搜索查找具有特定值的属性。例如," (cn= example ) " 过滤器返回包含通用名称(cn)设置为示例 的所有条目。

    当属性具有与语言标签关联的值时,搜索会返回所有值。因此,以下两个属性值都与 " (cn=example) " 过滤器匹配:

    cn: example
    cn;lang-fr: example
  • 列表与部分值匹配(子字符串搜索)。例如," (sn.4-1.erson) " 搜索过滤器返回以下值:

    sn: Derson
    sn: Anderson

    有关配置子字符串搜索长度的详情,请参阅 在子字符串索引中更改搜索密钥长度

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.