ディレクトリ属性
属性はディレクトリ情報の基盤です。タイプと 1 つ以上の値から構成されます。
cad141jp
属性はディレクトリ情報の基盤です。タイプと 1 つ以上の値から構成されます。
たとえば、1 つのエントリで、属性
commonName
に値 Rick
および Richard
を使用できます。そのオブジェクト識別子(OID)、名前、LDAP 名、構文、単一値かどうか、その値が変更可能かどうか、および説明などの情報で属性を設定ファイル内で定義します。
DSA に対して定義できる属性またはルールの数、あるいは DSA に格納できる属性のサイズに関する制限はありません。
例: 属性定義
set attribute x500attr:3 = { name = commonName ldap-names = cn syntax = caseIgnoreString description = "Common Name attribute" };
この記事では、以下のトピックについて説明します。
属性名
すべての属性には名前があります。
属性ごとに 1 つ以上の LDAP 名を定義することもできます。LDAP 名はデフォルトにより属性名になります。したがって、通常は、属性名と異なるときにのみ、LDAP 名を定義する必要があります。
たとえば、以下のコマンドを使用して属性を定義するときに、属性を参照する必要のある他のコマンドで
organizationName
またはより短い LDAP 名 o
を使用できます。set attribute (2.5.4.10) = { name = organizationName ldap-names = o syntax = caseIgnoreString };
単一値属性
デフォルトでは、各エントリの属性に多くの値を適用できます。エントリ内で 1 つの値のみを持つように属性を制限できます。これは属性の構文指定の一部として行います。属性はしたがって単一値属性と呼ばれます。
注:
単一値属性は各エントリ内の属性の特性です。これは一意の属性値の概念と区別してください。それは異なるエントリ間の属性値を比較する実行時チェックであり、スキーマの一部ではありません。属性構文
属性構文は、基本情報タイプの形式を定義します。
新しい構文
新しい属性構文をオンデマンドでサポートするため、CA Directory DSA は、不明な属性構文を受け入れてディレクトリに格納します。それらを検索できるようにインテリジェント一致ルールが適用されます。
属性構文への変更
それぞれの DSA は、ディレクトリにディレクトリ エントリに存在する属性(および属性構文)の名前を格納します。
注:
DSA は、可能なすべての
属性名および構文の名前を格納するわけではありません。その属性のインスタンスがすでに存在するときに属性の構文を変更しようとすると、DSA はこれを許可せず、以下のメッセージを生成します。
** ALARM **: datastore attribute attribute has different syntax than schema
このアプローチにより、DSA の設定を変更するときのディレクトリ データの整合性が維持されます。
属性の確認
属性をロードすると(
set attribute
コマンドを使用)、DSA はその構文を確認します。属性構文に従わない値とともに属性を追加しようとすると、DSA はその属性と関連の問題が含まれたエラーを返します。たとえば、構文によって numericString が指定されていて、属性値に数字以外の文字が含まれていると、DSA はエラーを返します。検索サービスでは、ベース オブジェクトが見つかった後に、無効な属性がシステムによって無視されます。
DSA は、任意のサイズの属性を許可します。したがって、属性バインド制限を定義する必要はありません。
CA Directory が属性値を格納して返す仕組み
DSA は常に入力されたとおりに属性を格納し返します。たとえば、
JohN citiZen
として指定された値は John Citizen
と JOHN CITIZEN
に一致しますが、常に値 JohN citiZen
が返されます。サポートされていない属性構文の構文エイリアス
CA Directory によってサポートされていない属性構文を使用する新規スキーマ オブジェクト定義を追加する場合は、set syntax-alias コマンドを使用します。
属性セット
属性セットでは、属性定義を簡単にラベル下にグループ化して、後からオブジェクト クラスなどの定義で使用できます。
set attr-set
コマンドを使用して、属性セットを設定ファイルで定義します。属性セットにはオブジェクト識別子と定義を指定します。定義は、名前と、定義する属性セットに含まれている属性または属性セットのリストで構成されます。例: 属性セット
set attr-set x500aset:3 = { name = organizationalAttributeSet description, localeAttributeSet, postalAttributeSet, telecommunicationAttributeSet, businessCategory, seeAlso, searchGuide, userPassword };
属性セットはオブジェクト クラス定義で使用される多くの属性をグループ化する便利な方法です。属性セットには前に定義された他の属性セットを含めることができます。