Apr 14, 2010

ThunderbirdのLDAP属性のマッピングで嵌った

Thunderbirdには、LDAPでディレクトリサーバに問い合わせて、その結果をアドレス帳として表示したり宛先入力時のオートコンプリートに使ったりする機能がある。その際に、ディレクトリサーバないに格納されてる情報をアドレス帳の「名前」とか「(プライベートの)住所」とかにどのように割り当てるかを決めないといけない。Thunderbirdの初期設定では一般的なマッピングの指定が既になされているんだけれども、特殊な運用をしてる場合には、その情報がアドレス帳で表示されないということになる。

で、そのマッピングは隠し設定で変更できるんだけど、マッピングを変更すると検索結果が全く表示されなくなるという問題にぶち当たってしまった。

結論から言うと、これは複数の項目で同じLDAP属性を参照しているせいだった。

user_pref("ldap_2.servers.myldap.attrmap.HomeCity", "l");

こんな風に書くと、もうそれだけで動かなくなる。何故かというと、「l(小文字のL)」というLDAP属性はThunderbirdの既定のマッピングにおいてWorkCity(ldap_2.servers.default.attrmap.WorkCity)で参照されているから。この時検索結果が表示されなくなる問題を回避するためには、ldap_2.servers.myldap.attrmap.WorkCityでマッピングするLDAP属性のリストから「l」を外すか、ldap_2.servers.myldap.attrmap.HomeCityで「l」を参照するのをやめるかする必要がある。他の項目についても同じ事が言える。

まとめ:LDAP属性のマッピングを変更する時は既定のマッピングとかち合わないように気をつけましょう。

エントリを編集します。

wikieditish message: Ready to edit this entry.











拡張機能