-
Language:
日本語
-
Language:
日本語
Red Hat Training
A Red Hat training course is available for Red Hat Directory Server
5.3. サービスクラスについて
サービスクラス (CoS) は、アプリケーションが認識できない方法でエントリー間で属性を共有します。CoS では、一部の属性値がエントリー自体と一緒に保存されない場合があります。代わりに、エントリーがクライアントアプリケーションに送信される際に、サービスクラスのロジックにより生成されます。
たとえば、ディレクトリーには、すべてが共通の属性
facsimileTelephoneNumber
を共有する数千ものエントリーが含まれています。従来は、FAX 番号を変更するためには、各エントリーを個別に更新する必要があり、管理者にとっては大きな負担となり、すべてのエントリーが更新されないリスクがありました。CoS を使用すると、属性値を動的に生成できます。facsimileTelephoneNumber
属性は 1 つのロケーションに保存され、各エントリーはその場所から各自の FAX 番号の属性を取得します。アプリケーションの場合、これらの属性は、実際にはエントリー自体に保存されていないにもかかわらず、他のすべての属性と同じように表示されます。
各 CoS は、ディレクトリー内の複数のエントリーで構成されています。
CoS 定義エントリーとテンプレートエントリーは相互に作用して、ターゲットエントリー (そのスコープ内のエントリー) に属性値を提供します。提供する値は、以下によって異なります。
- エントリーの DN (ディレクトリーツリーの異なる部分に異なる CoS が含まれる場合があります)。
- エントリーで保存されるサービスクラスの属性値。サービスクラス属性がない場合、特定のデフォルト CoS を意味することがあります。
- CoS テンプレートエントリーに保存される属性値。各 CoS テンプレートエントリーは、特定の CoS の属性値を提供します。
- エントリーのオブジェクトクラス。COS の属性値は、スキーマチェックが有効な場合、エントリーに属性を許可するオブジェクトクラスが含まれている場合にのみ生成され、そうでない場合は、すべての属性値が生成されます。
- ディレクトリーツリーの特定エントリーの一部に保存される属性。
重要
CoS 定義で使用する属性をインデックス化しないでください (
cosAttribute
パラメーター)。
注記
ロールと従来の CoS を併用することで、ロールベースの属性を提供することができます。これらの属性は、エントリーが特定の役割を持ち、関連する CoS テンプレートを持っているために表示されます。たとえば、ロールベースの属性を使用して、サーバーのルックスルー制限をロールごとに設定することができます。
5.3.1. Pointer CoS について
ポインター CoS は、テンプレート DN のみを使用してテンプレートエントリーを特定します。各ポインター CoS ごとに、1 つのテンプレート DN しか存在しない場合があります。ポインター CoS は、テンプレートエントリーの範囲内にあるすべてのエントリーに適用されます。
たとえば、図5.1「Pointer CoS のサンプル」 のポインター CoS は、dc=example,dc=com の下に保存されているすべてのエントリーと共通の郵便番号を共有します。
図5.1 Pointer CoS のサンプル
テンプレートエントリーは、CoS 定義エントリーの DN (cn=exampleUS,cn=data) で識別されます。
postalCode
属性がエントリー cn=wholiday,ou=people,dc=example,dc=com に対してクエリーされるたびに、Directory Server は、テンプレートエントリー cn=exampleUS,cn=data で使用可能な値を返します。