关于 LDAP 搜索查询

发布于 2024-12-21 13:51:56 字数 161 浏览 3 评论 0原文

假设我要搜索 123 等号码,并且 LDAP 具有 123#1-2-3 等条目。需要提供什么 LDAP 搜索过滤器?我尝试了 *123* 但在 1-2-3 情况下不起作用。

Let's suppose that I want to search a number say 123 and LDAP has entries like 123# or 1-2-3. What should be the LDAP Search filter which needs to be provided? I tried *123* but it doesn't work in case of 1-2-3.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

狼亦尘 2024-12-28 13:51:56

LDAP 没有“像 123# 这样的条目”,它具有由包含属性的专有名称标识的条目。要搜索包含值的条目,必须向搜索请求提供以下参数:

  • 基础对象(应开始搜索的可分辨名称)
  • 范围 - 基础、从属于基础的一级或子树(所有从属于基础的条目)到基本对象
  • 过滤器 - 必须评估为 true 的断言,以便将条目返回到客户端
  • 属性 要返回的属性 - LDAP 客户端所需的属性列表

如果相关属性名为 number 的语法为 Integer and如果匹配规则为 IntegerMatch,则过滤器 (number=123) 将查找名为 number 且整数值为 123 的属性。使用取决于属性类型定义中的语法和匹配规则,因为目录服务器执行将属性值与所提供的具有匹配规则的过滤器进行匹配的任务(顺便说一下,应用程序必须如此)。 “字符串”,相反,他们必须理解属性语法和匹配规则。有一个 DirectoryString 语法(具有非常具体的定义,尽管出于许多目的,它可以被视为普通字符串),但并非所有属性都使用 DirectoryString 语法定义。并非所有属性都使用相同的匹配规则和排序规则。

另请参阅

LDAP does not have "entries like 123#", it has entries identified by distinguished names that contain attributes. To search for an an entry that contains a value, you must provide the following parameters to a search request:

  • base object (distinguished name where the search should commence)
  • scope - base, one level subordinate to the base, or subtree (all entries subordinate to the base object
  • filter - an assertion that must evaluate to true in order for the entry to be returned to the client
  • attributes to return - a list of attributes that the LDAP client desires

If the attribute in question is named number and has a syntax of Integer and a matching rule of IntegerMatch, then the filter (number=123) will find an attribute named number with the integer value of 123. Which filter to use depends on the syntax and matching rule in the attribute type definition because the directory server performs the task of matching attribute values against provided filters with matching rules (as must applications, by the way). Programmers must not consider LDAP attribute values to be "strings", instead they must understand attribute syntaxes and matching rules. There is a DirectoryString syntax (with a very specific definition, though for many purposes it can be considered a garden-variety string) but not all attributes are defined with DirectoryString syntax. Nor do all attributes use the same matching rules and ordering rules.

see also

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文