我正在尝试根据可能包含外来字符(主要是瑞典字符åä和ö)的名称进行LDAP查询。而且我无法真正理解我得到的回应。例如:
以下查询
(givenName=hå*)
给我回覆一个叫Håkan的人(如预期),还有一个名字以“ ha”开头的人,例如Hanna(没想到)。
我尝试用对应的ASCII十六进制值(如此处https://social.technet.microsoft.com/wiki/contents/articles/5312.active-directory-characters-to-escape.aspx所示)替换å,如下所示:
(givenName=h\e5*)
这次,我得到的响应与以前一样,加上所有其他给定名称以h开头的人,例如Henrik。就像查询完全忽略了\ e5。
因此出于好奇,我尝试使用ASCII十六进制值表示“ ha”
(givenName=\48\61*)
这一次,查询接受十六进制值作为字符,从而产生与搜索“ ha”相同的结果。
这是怎么回事?以及如何构造查询以正确搜索带有外字符的名称?