たとえば、番号を検索したいと123
します。LDAP には、123#
またはのようなエントリがあります1-2-3
。提供する必要がある LDAP 検索フィルタは何ですか? 試してみ*123*
ましたが、の場合はうまくいきません1-2-3
。
1 に答える
3
LDAP には「123# のようなエントリ」はありません。属性を含む識別名によって識別されるエントリがあります。値を含むエントリを検索するには、検索リクエストに次のパラメータを指定する必要があります。
- ベース オブジェクト (検索を開始する識別名)
- スコープ - ベース、ベースの下位レベル、またはサブツリー (ベース オブジェクトの下位にあるすべてのエントリ)
- filter - エントリがクライアントに返されるために true と評価される必要があるアサーション
- 返す属性 - LDAP クライアントが必要とする属性のリスト
問題の属性に名前が付けられnumber
ていて、構文が Integer で一致ルールが IntegerMatch である場合、フィルターは、整数値が の(number=123)
名前の属性を検索します。使用するフィルターは、属性タイプ定義の構文と一致規則によって異なります。これは、ディレクトリ サーバーが、一致規則を使用して提供されたフィルターに対して属性値を一致させるタスクを実行するためです (ちなみに、アプリケーションもそうです)。プログラマーは、LDAP 属性値を「文字列」と見なしてはなりません。代わりに、属性の構文と一致規則を理解する必要があります。構文はありますが(非常に具体的な定義がありますが、多くの目的でさまざまな文字列と見なすことができます)、すべての属性が次のように定義されているわけではありませんnumber
123
DirectoryString
DirectoryString
構文。また、すべての属性が同じ一致ルールと順序付けルールを使用するわけではありません。
こちらもご覧ください
于 2011-12-14T13:14:16.400 に答える