LDAPベースでクラス別にオブジェクトを取得する方法は?

LDAPベースでクラス別にオブジェクトを取得する方法は?

特定のクラスのオブジェクトに対してLDAPを取得しようとしていますが、常に次のものを返します。

result: 32 No such object

背景:

LDAPアクセス可能なPGPサーバーであるkeyserver.pgp.comにあるPGP Universalサーバーにアクセスしようとしています。これには、PGPキーを取得する方法に関するいくつかの情報を含むpgpServerInfoクラスオブジェクトがあります。

私はLDAPについてよく知らないので、私のアプローチは完全に間違っている可能性があります。

これが私が試したことです:

ldapsearch -v -x -H ldap://keyserver.pgp.com "(objectclass=pgpServerInfo)"

私も追加しようとしましたが、-s base違い-s oneはありません。

これは働きます:

ldapsearch -v -x -b "cn=PGPServerInfo" -H ldap://keyserver.pgp.com "(objectClass=pgpServerInfo)"

しかし、そうすることで、私が避けたいターゲットの名前を想定する必要があります。

オブジェクトを見つけるための正しいクエリは何ですか?

答え1

デフォルト名を使用したくない場合は、以下を試してください。
ldapsearch -v -x -s base -H ldap://keyserver.pgp.com "(objectclass=*)" +

+検索時に「運用属性」が一覧表示されます。

これにより、必要なものが得られるまでnamingContextを選択できます。

関連情報