メインコンテンツまでスキップ

付録 B. 変更の要約

本付録は非規範的である.

本付録は, RFC 2251, RFC 2829 および RFC 2830 に対して行われた実質的な変更を要約する. 以下に詳述する個々の変更に加えて, 本文書の読者は, 元の文書の内容に対して多数の一般的な編集上の変更が行われたことを認識すべきである. これらの変更には次が含まれる:

  • もともと RFC 2251 の 4.2.1 節と 4.2.2 節, RFC 2829 (第 2 節と第 4 節を除くすべての節), および RFC 2830 にあった資料が, 単一の文書に統合された.

  • 統合された資料は, 関連する主題をまとめ, 文書の流れを改善し, 意図を明確にするために, 大幅に再編成および編集された.

  • 本文全体にわたり, LDAP プロトコル層と IETF のセキュリティ用語の定義に整合させる変更が行われた.

  • 両文書のセキュリティに関する考慮事項に対して, 現在の運用経験に基づく大幅な更新と追加が行われた.

B.1. RFC 2251 に対して行われた変更​

本節は, 本文書が RFC 2251 の 4.2.1 節と 4.2.2 節に対して行った実質的な変更を要約する. RFC 2251 の 4.2.1 節に対する追加の実質的な変更は [RFC4511] にも記述されている.

B.1.1. 4.2.1 節 ("Bind 要求の順序付け")​

  • 第 1 段落: 「If at any stage the client wishes to abort the bind process it MAY unbind and then drop the underlying connection」という文を削除した. Unbind 操作は依然としてこの挙動を許すが, 明示的には記述されていない.

  • BindRequest PDU の受信時にセッションが匿名状態へ移行すること, および Bind 要求が成功した場合にのみ非匿名状態へ移行することを明確にした.

B.1.2. 4.2.2 節 ("認証とその他のセキュリティサービス")​

  • RFC 2251 は, 匿名認証を simple bind 方式を用いて行わなければならない (MUST) と述べている. 本仕様は simple bind 方式の匿名認証メカニズムを定義し, すべての準拠実装がそれをサポートすることを要求する. 匿名の認証状態と認可状態を生み出す他の認証メカニズムを, 準拠実装が実装して用いてもよい.

B.2. RFC 2829 に対して行われた変更​

本節は, RFC 2829 に対して行われた実質的な変更を要約する.

B.2.1. 第 4 節 ("必須のセキュリティメカニズム")​

  • TLS によって保護される名前/パスワード認証メカニズム (後述の B.2.5 節参照) が, LDAP の実装必須のパスワードベース認証メカニズムとして SASL DIGEST-MD5 メカニズムに取って代わった. 実装は SASL DIGEST-MD5 [DIGEST-MD5] のサポートを継続することが推奨される.

B.2.2. 第 5.1 節 ("匿名認証の手順")​

  • 匿名認証は, 長さ 0 の name 値と長さ 0 の password 値を伴うことを明確にした. 長さが 0 でない name 値と長さ 0 の password 値を伴う simple Bind 要求を扱うために, 未認証認証メカニズムが追加された.

B.2.3. 第 6 節 ("パスワードベースの認証")​

  • B.2.1 節を参照.

B.2.4. 第 6.1 節 ("Digest 認証")​

  • SASL-DIGEST-MD5 メカニズムがもはや実装必須ではなくなったため, 本節は歴史的なものとなり, 本文書には含めなかった. RFC 2829 の 6.1 節が引き続き SASL DIGEST-MD5 認証メカニズムを記述している.

B.2.5. 第 6.2 節 ("TLS 暗号化下での 'simple' 認証の選択")​

  • "simple" 認証メカニズムを, より適切に記述するために名前/パスワード認証メカニズムに改称した.

  • TLS の使用を, LDAP プロトコル層の定義に整合するよう一般化した. TLS の確立は独立した主題として論じられるようになり, すべての認証メカニズムおよびその他のセキュリティ層で用いるために一般化された.

  • userPassword 属性が, 認証に用いるパスワード値の唯一の格納場所であるかのような含意を削除した. 認証に用いるパスワードをサーバーでどのように, またどこに格納するかについて, 暗黙の要件はもはや存在しない.

B.2.6. 第 6.3 節 ("TLS を用いるその他の認証の選択肢")​

  • B.2.5 節を参照.

B.2.7. 第 7.1 節 ("TLS を用いる証明書ベースの認証")​

  • B.2.5 節を参照.

B.2.8. 第 8 節 ("その他のメカニズム")​

  • すべての SASL 認証メカニズムが LDAP 内で明示的に許容される. 具体的には, SASL ANONYMOUS および SASL PLAIN メカニズムが, LDAP 内での使用から排除されなくなったことを意味する.

B.2.9. 第 9 節 ("認可アイデンティティ")​

  • dnAuthzId および uAuthzId の値の照合規則を規定した. 特に, dnAuthzId 形式の DN 値は DN 照合規則を用いて照合しなければならず, uAuthzId 値はオクテット単位で比較する前に SASLprep 規則を用いて準備しなければならない (MUST).

  • uAuthzId 値がグローバルに一意であると見なすべきではないことを明確にした.

B.2.10. 第 10 節 ("TLS 暗号スイート")​

  • TLS 暗号スイートの推奨は本仕様に含めないこととした. 実装は TLS_RSA_WITH_3DES_EDE_CBC_SHA 暗号スイートをサポートしなければならなくなり, TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA 暗号スイートのサポートを継続すべきである.

  • 匿名認証は, 長さ 0 の name 値と長さ 0 の password 値を伴うことを明確にした. 長さが 0 でない name 値と長さ 0 の password 値を伴う simple Bind 要求を扱うために, 未認証認証メカニズムが追加された.

B.3. RFC 2830 に対して行われた変更​

本節は, RFC 2830 の第 3 節と第 5 節に対して行われた実質的な変更を要約する. 他の節の変更の要約については [RFC4511] を参照されたい.

B.3.1. 第 3.6 節 ("サーバーアイデンティティの検査")​

  • サーバーアイデンティティ検査アルゴリズムを大幅に更新し, 完全かつ堅牢であることを確保した. 特に, subjectAltName および subjectName フィールドの関連するすべての値の使用がアルゴリズムで扱われ, 値の型ごとに照合規則が規定された. マッピングが安全な方法で行われる場合, サーバーアイデンティティのマッピングされた (導出された) 形式を用いてよいこととした.

B.3.2. 第 3.7 節 ("サーバー機能情報の更新")​

  • TLS 確立後にサーバー機能に関する情報を常に更新することは, クライアントに要求されなくなった. これは, その情報が安全なメカニズムを通じて取得された状況に対応するためである.

B.3.3. 第 5 節 ("TLS がクライアントの認可アイデンティティに与える影響")​

  • LDAP セッションに TLS 層を確立することが, LDAP セッションの認可状態を変化させることがある.

B.3.4. 第 5.2 節 ("TLS 接続のクローズによる影響")​

  • LDAP セッションの TLS 層を閉じることにより, ローカルポリシーに基づいて LDAP セッションの認証状態と認可状態が変化する. 具体的には, TLS クローズ時に認証状態と認可状態を匿名に変更することは実装に要求されないことを意味する.

  • RFC 2401 への参照を RFC 4301 に置き換えた.