LDAP 検索フィルター式

ルール・ベースのユーザー・グループのルールは、LDAP 検索フィルターの構文に基づいています。

LDAP 検索フィルターの構文に関する情報は、関連リンクのセクションの『RFC2254 - The String Representation of LDAP Search Filters』を参照してください。

以下の LDAP 検索フィルター構文のサブセットを使用できます。

  • アンパーサンド (&) で表される AND 演算子
  • 縦線 (|) で表される OR 演算子
  • 感嘆符 (!) で表される NOT 演算子
  • 等号 (=) で表される、名前と値の式の同等比較
  • 名前と値の式で使用される値の先頭または末尾のアスタリスク (*) で表されるワイルドカード
注: 属性の先頭を ANDOR、または NOT (&|、または !) のいずれかの演算子にすることはできず、属性に比較の等号 (=) または括弧を含めることもできません。

以下に例を示します。

(uid=testuser)
属性 uid の値が testuser に完全一致する全ユーザーを突き合わせます。
(uid=test*)
属性 uid の値の先頭が test の全ユーザーを突き合わせます。
(!(uid=test*))
属性 uid の値の先頭が test でない全ユーザーを突き合わせます。
(&(department=1234)(city=Paris))
属性 department の値が 1234 に完全一致し、属性 city の値が Paris に完全一致する全ユーザーを突き合わせます。
(|(department=1234)(department=56*))
属性 department の値が 1234 に完全一致しているか、値の先頭が 56 の全ユーザーを突き合わせます。
(&(department=12*)(!(department=123*)))
属性 department の値の先頭が 12 のうち 123 を除く全ユーザーを突き合わせます。

構文の検証

ルール・ベースのユーザー・グループを定義したり変更したりすると、ルール・ベースのユーザー・グループのアダプターは LDAP 検索フィルター式の構文を検証します。 例:

無効なルールが指定されました:
無効なルールを指定すると、ルール・ベースのユーザー・グループは該当するエラー・メッセージを返します。 しかし、使用された属性名がユーザー構成内にあるかどうかは検査しません。 検索フィルターを呼び出すコードを使用して、構成を検証できます。
無効な属性が指定されました:
ルールに無効な属性名が含まれている場合、ルール・ベースのユーザー・グループのグループ・メンバーシップは判別されず、エラーがログに記録されます。 属性を削除したり名前変更したりする場合など、システム内の属性の構成を変更すると、既存のルールが壊れる可能性があります。