如何处理LDAP查询中的特殊字符

时间:2014-11-19 10:13:10

标签: ldap ldap-query

我在Ubuntu上使用ldapsearch

  • 访问LDAP服务器
  • 从返回的结果创建缓存文件以查找地址,电话号码等

要创建缓存文件,我使用此命令

ldapsearch -h ldap.example.domain -LLL -D cn=***,cn=***,dc=***,dc=*** -W -s one -b cn=***,dc=***,dc=*** "cn=*" sn givenName
对于大多数情况,

可以解决问题,但如果我在缓存文件中搜索包含umlaut characters(例如üöäß)的名称,则不会返回任何结果。

原因:

Max Müller

例如编码为

Max TcO8bGxlcg==

由LDAP服务器,因此在缓存文件中不可用。有没有可能解决这个问题?

注意:我无法更改LDAP服务器本身的结果,因为我没有root权限。

1 个答案:

答案 0 :(得分:0)

您看到的是LDAPSEARCH结果的正常现象。通常,您不需要创建缓存文件,因为LDAP非常快。您在结果中看到的值是base64编码。

你可以使用像UnboundID LDAP SDK for Java这样的东西,它有一个可以在本地运行的基于内存的LDAP服务器。