ldapsearch で検索フィルタを使用する
検索する属性を指定するには、検索フィルタを使用します。
このタスクについて
検索フィルタの構文は次のとおりです。
"attribute operator value"
たとえば、次の検索フィルタを使用すると、sn (姓) 属性の値として Smith を含むすべてのエントリが検索されます。
"sn=Smith"
検索フィルタで、ディレクトリに格納されている任意の属性を指定できます。以下は、ユーザーに関するエントリを検索する場合に使用する一般的な属性です。
- cn ユーザーの共通名
- sn ユーザーの姓
- telephonenumber ユーザーの電話番号
- l ユーザーの地理的な位置
ldapsearch のコマンドラインで検索フィルタを直接指定することもできますが、それらの検索フィルタを含むファイルを作成し、ldapsearch のパラメータ -f を使用してそのファイルを参照することも可能です。ファイルを使用する場合は、1 行につき 1 つの検索フィルタを指定します。
Domino® ディレクトリなどの LDAP ディレクトリで言語タグがサポートされている場合は、検索フィルタに言語タグを含めることができます。以下に例を示します。
"givenName;lang-fr=Etienne"
ブール演算子を含む複数の検索フィルタ
このタスクについて
複数の検索フィルタとブール演算子を使用できます。それには、次の構文を使用します。
"(operator(filter)(filter))"
たとえば、次の検索フィルタを使用すると、姓が Browning で、所在地が Dallas であるエントリが検索されます。
"(&(sn=Browning)(l=Dallas))"
ブール演算子は入れ子にすることができます。たとえば、次の検索フィルタを使用すると、Caneel という姓、または Alfred という名を持つエントリが、MDN というメールドメインで検索されます。
"(&(maildomain=MDN)(|(sn=caneel)(givenname=alfred)))"