web-dev-qa-db-ja.com

スペースを含むDNを指すopenldapの参照オブジェクト

コンテナ名の1つにスペースがあるリモートサーバーのDNを指す、openldapに参照オブジェクトを追加しようとしています。

参照:ldap://ldap3.example.com/ou=test ou、dc = example、dc = net

これが問題を引き起こしているようです。ldifファイル内のスペースを「エスケープ」するための構文は何ですか?スペースの前にバックスラッシュを付けますか?引用符で囲まれた属性値全体?

助けてくれてありがとう

1
Haddad

私はこれが古いスレッドであることを知っていますが、おそらくこれは誰かを助けるでしょう...スペース文字を%20に置き換えることは私のために働きました。

2
5string

RFC 4514に従って、次の方法でスペースをエスケープすることもできるはずです。

エスケープする必要のある文字をバックスラッシュします。

ref: ldap://ldap3.example.com/ou=test\ ou,dc=example,dc=net

エスケープする必要のある文字を含む値全体を二重引用符で囲みます。エスケープが必要な文字が二重引用符である場合、これは役に立ちません。これは、値にエスケープが必要な複数の文字がある場合に特に役立ちます。

ref: ldap://ldap3.example.com/ou="test ou",dc=example,dc=net

特殊文字をエスケープするRFC4514 2.4の方法は、バックスラッシュの後に各バイトに2桁の16進コードが続く方法です。

ref: ldap://ldap3.example.com/ou=test\20ou,dc=example,dc=net
0
Ed Grimm