付録 A. 変更点
この付録は規範的ではない。
本文書は RFC 2251、RFC 2252、RFC 2256 の一部をほぼ全面的に書き直したものであり、技術仕様全体の明確性を高めるために行われた。本付録は、これらから本文書に取り込んだ部分に対する実質的変更を要約する。残りの部分については [RFC4510]、[RFC4511]、[RFC4517]、[RFC4519] を参照されたい。
A.1. RFC 2251 からの変更
本文書は、以下のとおり RFC 2251 の 3.2 節、3.4 節、および 4 節と 6 節の一部を取り込んでいる。
A.1.1. RFC 2251 の 3.2 節
RFC 2251 の 3.2 節は、LDAP で使用される X.500 データモデルを簡単に紹介した。以前の仕様は [X.501] に依存していたが、X.500 モデルを LDAP 用にどのように適応するかが不明確だった。本文書は、特に適応が必要な領域について、LDAP で使用される X.500 データモデルをより詳細に記述する。
RFC 2251 の 3.2.1 節は、属性を「1 つの型と 1 つ以上の関連値」と記述した。LDAP では、属性記述、すなわち 0 個以上のオプションを持つ型と 1 つ以上の関連値、と記述する方が適切である。
RFC 2251 の 3.2.2 節は、サブスキーマサブエントリが objectClasses と attributeTypes を含むことを義務付けたが、X.500(93) では任意である。通常、X.500(93) のサブスキーマ機構をサポートする実装は両方を提供するが、相互運用性のために全サーバーへ絶対に要求する必要はない。X.500(93) との整合性のため義務を削除した。また、エントリを制御するサブスキーマは、そのエントリの 'subschemaSubentry' 属性が参照する (sub)entry を読み取って取得することを明確にした。
A.1.2. RFC 2251 の 3.4 節
RFC 2251 の 3.4 節は「サーバー固有データの要件」を規定した。この内容は変更を加えて本文書の 5.1 節に取り込まれた。
変更点:
- ルート DSE の属性は、アクセス制御に加えて「その他の制限」を受けることを明確化。
- 認識される拡張要求だけを 'supportedExtension' に列挙すればよいことを明確化。
- 認識される要求コントロールだけを 'supportedControl' に列挙すればよいことを明確化。
- ルート DSE 属性は運用属性であり、名前で要求しない限り検索要求で返されないことを明確化。
- すべてのルート DSE 属性を利用者が変更できるわけではないことを明確化。
- ルート DSE 内の 'subschemaSubentry' の扱いに関する矛盾した記述を削除。以前の仕様は、この属性が「このサーバーに既知のサブスキーマエントリ (またはサブエントリ)」を参照するとしたが、意図された用途にも単一値属性という正式定義 [X.501] にも整合しない。単純な、場合によっては不完全なサブスキーマサブエントリ の一覧も有用性が低い。本文書の 5.1 節は、ルート DSE の 'subschemaSubentry' がルート DSE を制御するサブスキーマを参照すると規定する。一般的な検出機構は引き続き利用できる (本文書 4.4 節参照)。
A.1.3. RFC 2251 の 4 節
LDAP 情報モデルを詳述する RFC 2251 の 4 節から、次を取り込んだ。
- 識別値を、記述にオプションを持たない属性に限定 (4.1.3 節)。
- 属性タイプ (4.1.4 節)、属性記述 (4.1.5 節)、属性 (4.1.8 節)、マッチング規則識別子 (4.1.9 節) のデータモデル面。
- 利用者スキーマ要件 (4.1.6、4.5.1、4.7 節)。
これらに対する明確化には次が含まれる。
- サブタイプ化、およびオプションを持つ AttributeDescriptions。
A.1.4. RFC 2251 の 6 節
RFC 2251 の 6.1 節と 6.2 節の第 2 段落を本文書に取り込んだ。
A.2. RFC 2252 からの変更
本文書は RFC 2252 の 4、5、7 節を取り込んでいる。
A.2.1. RFC 2252 の 4 節
仕様を Augmented BNF [RFC4234] を使用するよう更新した。OBJECT IDENTIFIER の文字列表現を厳格化し、RFC 2252 の記述どおり先行ゼロを禁止した。
RFC 2252 は
引用符付き文字列 (qdstring) の ABNF を更新し、RFC 2252 の 4.3 節に記述されたエスケープ機構を反映した。
A.2.2. RFC 2252 の 5 節
RFC 2252 の 5 節で示された運用属性定義を本文書に取り込んだ。
'namingContexts' の記述を明確化した。最上位 DSA は、他の値に加えて DIT の根を示す "" を公開することが望ましい。
'altServer' は任意の URI を保持できることを明確化した。
'supportedExtension' は、サーバーが認識する拡張操作の拡張要求に関連付けられた OBJECT IDENTIFIER だけを列挙すればよいことを明確化した。
'supportedControl' は、認識する要求コントロールに関連付けられた OBJECT IDENTIFIER だけを列挙すればよいことを明確化した。
'structuralObjectClass' と 'governingStructureRule' の運用属性タイプ記述を追加した。
'subschemaSubentry' の属性定義を修正し、SINGLE-VALUE と NO-USER-MODIFICATION を正しい順序で列挙した。
A.2.3. RFC 2252 の 7 節
RFC 2252 の 7 節は 'subschema' と 'extensibleObject' の定義を提供した。これらをそれぞれ本文書の 4.2 節と 4.3 節に統合した。また同節のオブジェクトクラス実装要件を本文書の 7 節に取り込んだ。
'extensibleObject' と禁止属性の相互作用を明確化した。
A.3. RFC 2256 からの変更
本文書は RFC 2256 の 5.1、5.2、7.1、7.2 節を取り込んでいる。
RFC 2256 の 5.1 節の 'objectClass' 属性タイプ定義を本文書の 2.4.1 節に統合した。「値の 1 つは 'top' または 'alias' である」を、'alias' に属するエントリも 'top' に属するため、「値の 1 つは 'top' である」に置き換えた。
RFC 2256 の 5.2 節の 'aliasedObjectName' 属性タイプ定義を本文書の 2.6.2 節に統合した。
RFC 2256 の 7.1 節の 'top' オブジェクトクラス定義を本文書の 2.4.1 節に統合した。
RFC 2256 の 7.2 節の 'alias' オブジェクトクラス定義を本文書の 2.6.1 節に統合した。
A.4. RFC 3674 からの変更
本文書は、RFC 3674 の 'supportedFeatures' 技術仕様に実質的な変更を加えていない。