使用带有重音字符的ldapsearch

时间:2016-05-24 10:05:16

标签: ldap non-ascii-characters

我使用ldapsearch命令查询OpenLDAP服务器,虽然在大多数情况下工作正常,但对于西班牙语或法语等语言中的特殊字符并不是很聪明。

我的意思是,如果我执行查询:

ldapsearch -h myhost "givenName=Ramón"

它将输出名称为Ramón的人,但它不会输出名称输入为Ramon的人(这是为了避免特殊字符问题而非常频繁)。我可以很聪明,只需执行以下查询:

ldapsearch -h myhost "givenName=Ram*n"

它工作正常,输出所有可能的变化,但我想知道是否有某种方式告诉ldapsearch只包括搜索中字符的重音版本,因此搜索Ramon包括两者RamonRamón结果。{{1}}现在大多数搜索引擎都已经这样做了,所以也许有一种方法可以用LDAP来实现。

提前致谢

1 个答案:

答案 0 :(得分:0)

您需要根据RFC 4515 String Representation of Search Filters

转义字符串

通常,您需要转义RFC 4515 String Representation of Search Filters中列出的项目,我建议使用任何非UTF8字符。

我还找到了一些methods that may be helpful来启动。

最后,退出。 开始填充搜索描述或其他一些非命名属性。 (任何不属于DN的属性)使您的DN永不改变。没有用户应该看到DN应该只是一个条目的路径。如果你继续这种做法,你会遇到很多“现成”工具的问题。

至于返回“a”而不是“变形金刚”(或类似的东西)。 好消息是LDAP是轻量级的,并没有所有那些为程序员完成所有工作的花哨功能。坏消息是一样的。

LDAP不提供任何此类功能来根据需要转换章程。