取消屏蔽LDAP搜索过滤器-页面3
LDAP属性值可以包含特殊字符。其中包括\(反斜杠),*(星号),以及其他几个(取决于LDAP风格)。要在搜索中包括这些字符,您必须在所需字符前加上转义序列。例如,(sn = hodges \ 5cSmith)将搜索字符串hodge \ smith。有关如何在搜索中包含特殊字符的更多详细信息,请查看下面列出的Microsoft搜索过滤器参考。
LDAP版本3为您提供了为特定属性或对象构建匹配运算符和规则的功能。一旦创建它们,便可以在您的搜索字符串中对其进行引用。 (sn:2.4.6.8.444:= foutley)例如使用OID 2.4.6.8.444(在这种情况下是虚构的)指定的匹配规则比较姓氏为foutley的条目。这些匹配规则通常与匹配条目的语法和文本大小写有关。有一个LDAP草案draft-ietf-ldapbis语法,专门用于语法和匹配规则。 也可以使用可选的(:dn)参数来搜索专有名称属性。 (sn:dn:2.4.6.8.444:= foutley)搜索姓氏和专有名称以查找包含foutley的记录。
错误代码
除了上面列出的运算符和语法规则外,还有大量错误消息和结果代码可帮助您优化和调试搜索。有关错误消息及其含义的完整列表,请参见下面的Netscape参考。以下是一些最有用的工具:
- 结果代码为0表示操作成功。
- 结果代码为18表示您使用了对于特定属性不存在的匹配规则。
- 结果代码为50表示您无权执行操作。
下次进行LDAP搜索
到目前为止,在这两篇文章中,我们已经对LDAP搜索进行了概述。如您所见,LDAP搜索并不那么复杂。您不需要成为一名全职编码爱好者就可以使用此有用的工具。下次,在第3部分中,我们将讨论如何在URL,电子邮件和命令行中使用LDAP搜索。我们将以LDAP浏览器的介绍结束本系列。直到下一次,祝您搜索愉快!
其他资源
总览
www.hawaii.edu/brownbags/ldap/ldap2.pdf 关于LDAP和LDAP搜索的很好的介绍。
http://www.hawaii.edu/ldap/details.html 很好地概述了LDAP URL语法和示例。
http://java.sun.com/products/jndi/tutorial/basics/directory/filter.html Sun有关搜索过滤器的概述。
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/adsi/adsi/search_filter_syntax.asp 搜索过滤器概述,包括特殊字符。
http://developer.netscape.com/docs/manuals/dirsdk/csdk30/error.htm LDAP v3兼容和自定义错误代码的Netscape列表。
LDAP公共目录
http://www.emailman.com/ldap/public.html 可用于测试查询的公共目录列表。
OID
http://www.alvestrand.no//objectid/ 关于注册OID并列出已定义的OID的概述。
RFC
http://perl-ldap.sourceforge.net/rfc.html 一个(很多)位置可找到LDAP
RFC
http://www.ietf.org/ids.by.wg/ldapbis 修订LDAP v3协议的IETF标准组之一。还具有您可以加入的活动邮件列表。