LDAP オブジェクト・ツリーの設計は、熟考の上で行ってください。ポリシー・エージェントは、さまざまな機構を使用して LDAP サーバーからオブジェクトを検索します。
- 最初の検索は、ReadFromDirectory ステートメントの SearchBaseDN パラメーターに基づいて、オブジェクトのサブツリーについて実行されます。
- この最初の検索で見つかったオブジェクトに (ibm-policySubtreesAuxContainedSet 属性を使用した) サブツリー・ポインター参照が含まれている場合には、該当するすべてのサブツリーについて検索が実行されます。これは再帰的検索で、さらに見つかったオブジェクトにもサブツリー・ポインター参照が含まれている可能性があります。
- 上記の検索は、特定のオブジェクト・クラスのみを検索するためにフィルターを使用します。
LDAP プロトコル・バージョン 3 の場合、デフォルトでは ibm-policy オブジェクト・クラスのみをスキャンします。
これは要約オブジェクト・クラスで、ここから他のすべてのポリシー・オブジェクト・クラスが取り出されます。ほとんどの LDAPv3 サーバーは
要約クラスと補助クラスを実装しているため、この検索によって正しくポリシー・オブジェクト・クラスのみが見つかります。ただし一部の LDAPv3 サーバーは、要約/補助オブジェクト・クラスを検索フィルターと見なしません。そのようなサーバーの場合には、ReadFromDirectory ステートメントに LDAP_AbstractPolicy NO を指定してください。これによって検索は、すべてのオブジェクト・クラスを見付けるフィルターを使用します。
- 上記のすべての検索に、ReadFromDirectory ステートメント・パラメーター SearchPolicyKeyword、SearchPolicyGroupKeyword、または SearchPolicyRuleKeyword で指定したキーワードを使用してフィルターに掛けます。LDAP サーバーは、一致するキーワードをもつオブジェクトのみを戻します。
- 上記の検索によって見つかった一部のオブジェクトには、別のオブジェクトに対する DN ポインター参照が含まれていることがあります。これらのオブジェクトは個々に検索されます。検索するオブジェクトがポリシー規則の場合、ReadFromDirectory ステートメントで指定したキーワードを使用してサブツリー検索が実行されます。その他のすべてのオブジェクトは、DN ポインターを使用して単一オブジェクトとして検索されます (検索にキーワードは使用されません)。
- 上記の検索で見つかったすべてのポリシー規則オブジェクトに、ReadFromDirectory ステートメントの PolicyRole パラメーターを使用してさらにフィルターが掛けられます。ReadFromDirectory ステートメントに指定したポリシー役割に一致しない規則は廃棄されます。
したがって、最初は最小セットのオブジェクトが検索され、その後に追加の個々の LDAP 検索が何度も続くように、LDAP ツリーを設計することが可能です。オブジェクトの合計セットが大きい場合、この方法では、オブジェクトの検索にパフォーマンス上の影響が出ます。可能であれば、最初に最大セットのオブジェクトを検索するようにツリーと ReadFromDirectory パラメーターを
設計して、最高のパフォーマンスを達成するように試みるか、サブツリー・ポインター参照を使用して 1 回の操作でより大きいオブジェクト・セットを検索するようにしてください。