Ruby / LDAP非ASCII字符支持

时间:2010-06-29 14:33:39

标签: ruby ldap

似乎LDAP要求使用非ASCII字符的字符串进行Base64编码。告诉它将字符串解析为base64编码字符串的方法是在属性名称中添加一个额外的冒号,使“cn:name”变为“cn :: name”(根据this site

现在,我的问题是:如何告诉Ruby LDAP执行此操作?我找不到documentation提及它的任何内容,但也许它得到了支持。

其他LDAP库如Net :: LDAP怎么样?它们是否支持使用非ASCII字符的操作?

更新: Ruby / LDAP的测试套件(0.9.7,ruby v.1.8.6)包括在LDAP中添加带有外来字符的条目的测试。他们设置$KCODE="UTF8"。但是,这似乎对我的设置没有影响。

只要dn中只有ASCII字符,

属性允许使用非ASCII字符,因此我目前使用仅使用ASCII的uid进行解决方法。但是,这感觉不是最佳。

1 个答案:

答案 0 :(得分:0)

我通过切换到Net :: LDAP解决了这个问题(顺便说一句,使用起来感觉更好)。这要求我升级到ruby 1.8.7。