7.2.7. CoS を使用した多値属性の処理
属性は、サービスのクラスを使用して生成できます。これには複数値の属性が含まれます。これにより、混乱を生じさせる可能性があります。どの CoS が値を提供しますか。これらのいずれか、またはすべてですか。競合 CoS テンプレートからどのように値が選択されていますか。生成された属性は単値または多値を使用しますか。
これを解決する方法は 2 つあります。
- 複数の CoS が生成する属性をターゲットエントリーにマージするルールを作成。これにより、ターゲットエントリーの値が複数表示されます。
- 競合する CoS 定義の中から 1 つの CoS 値を選択するように優先度を設定。これにより、ターゲットエントリーに 1 つの値が生成されます。
注記
Indirect CoS は
cosPriority
属性をサポートしません。
CoS が CoS 属性の複数の値を処理する方法は、merge-schemes 修飾子を使用するかどうかで定義されます。
cosAttribute: attribute override merge-schemes
cosAttribute: attribute override merge-schemes
注記
merge-schemes 修飾子は、CoS による物理属性値や override 修飾子の処理方法に影響を与えません。競合する CoS テンプレートまたは定義が複数ある場合は、競合するすべての CoS 定義のすべての
cosAttribute
に、同じ merge-schemes と override 修飾子を設定する必要があります。それ以外の場合は、1 つの組み合わせが可能なすべての CoS 定義から任意に選択されます。
merge-schemes 修飾子を使用すると、CoS に、管理対象属性に対して複数の値を生成する、または生成できることを通知します。多値 CoS 属性を持つシナリオは 2 つあります。
- 1 つの CoS テンプレートエントリーに管理 CoS 属性のインスタンスが複数含まれるため、ターゲットエントリーに多値が作成されます。以下に例を示します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注記このメソッドは、Classic CoS でのみ動作します。 - 複数の CoS 定義が同じターゲット属性にサービスクラスを定義する可能性があるため、複数のテンプレートエントリーがあります。以下に例を示します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
ただし、CoS 定義が複数ある場合でも、属性には 1 つの値のみが生成されることがあります。CoS 定義が複数ある場合、値は任意に選択されます。これは予測不可で、意図しないオプションです。どの CoS テンプレートを使用するかを制御する方法は、テンプレートに順位 (優先順位) を設定することであり、優先順位の高い CoS が常に「勝ち」、値を提供します。
値を提供するために複数のテンプレートが完成することはかなり一般的です。たとえば、CoS 定義エントリーには多値の
cosSpecifier
属性を使用できます。テンプレートの優先度は、cosPriority
属性を使用して設定します。この属性は、特定のテンプレートのグローバル優先度を表します。0 の優先度が最も優先されます。
たとえば、部門番号を生成する CoS テンプレートエントリーは、以下のようになります。
このテンプレートエントリーには、
departmentNumber
属性の値が含まれます。優先度はゼロであるため、このテンプレートは、別の departmentNumber
値を定義する他の競合するテンプレートよりも優先されます。
cosPriority
属性が含まれないテンプレートは、優先度が最も低いとみなされます。2 つ以上のテンプレートが属性値を提供し、優先度が同じ (または優先順位がない) 場合は、値が任意に選択されます。
注記
負の
cosPriority
値の動作は Directory Server では定義されないため、負の値を入力しないでください。