グループ、ロール、および CoS は次のように定義されます。
グループは、メンバーのリストまたはメンバーを定義するフィルタで表されるエントリです。メンバーのリストから構成されるグループの場合、Directory Server はユーザーエントリごとに isMemberOf 属性の値を生成します。そのため、ユーザーエントリの isMemberOf 属性には、そのエントリが属するすべてのグループが示されます。
ロールは、ロールの各メンバーに対して nsrole 属性を生成するメカニズムによって、グループと同等またはそれ以上の機能を提供します。
CoS は計算された属性を生成します。これにより、各エントリに属性を格納しなくても、エントリで共通の属性値を共有できます。
共通の計算された属性値から自動的にスタティックグループのメンバー全員に継承させる目的で isMemberOf 属性を使用することはできません。
Directory Server には、ロール、グループ、CoS の計算された属性の値に基づいて検索を実行する機能があります。操作で使用するフィルタ文字列には、nsRole 属性または CoS 定義によって生成された任意の属性を含めることができます。さらに、フィルタ文字列を使用して、この属性の値の比較操作を実行することもできます。ただし、計算された CoS 属性にインデックスを作成することはできません。そのため、CoS によって生成された属性を含む検索では、時間とメモリーの面で、大量のリソースを消費する可能性があります。
ロール、グループ、およびサービスクラスが提供する機能を活用するには、ディレクトリの配備を計画する段階で、ディレクトリのトポロジを決定しておく必要があります。これらの機能と、それらによってトポロジを簡単にする方法については、『Sun Java System Directory Server Enterprise Edition 6.1 配備計画ガイド』の「ディレクトリエントリのグループ化と属性の管理」を参照してください。
ロールとグループの仕組みの詳細については、『Sun Java System Directory Server Enterprise Edition 6.1 Reference』の第 8 章「Directory Server Groups and Roles」を参照してください。CoS の詳細については、『Sun Java System Directory Server Enterprise Edition 6.1 Reference』の第 9 章「Directory Server Class of Service」を参照してください。