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

5.2. Basic Kerberos Types (基本Kerberosタイプ)

5.2. Basic Kerberos Types (基本Kerberosタイプ)

このセクションでは, Kerberosプロトコル全体で使用される基本ASN.1タイプを定義します。これらの基本タイプは, より複雑なメッセージ構造の構成要素です。

5.2.1. KerberosString

KerberosStringは, Kerberosメッセージ内のテキストデータに使用されます。

  • GeneralStringに基づいています
  • UTF-8エンコーディングを使用すべきです (SHOULD)
  • 使用法に応じて特定の文字セットに制限されます
  • 国際文字を適切に処理しなければなりません (MUST)

5.2.2. Realm and PrincipalName (レルムとプリンシパル名)

Realm (レルム)

  • Kerberos管理ドメインを表します
  • KerberosStringとしてエンコードされます
  • 通常は大文字のドメインスタイルの名前です
  • 命名規則についてはセクション6.1を参照してください

PrincipalName (プリンシパル名)

  • Kerberosのエンティティを識別します
  • 名前タイプと名前コンポーネントのシーケンスを含みます
  • 様々な名前タイプが定義されています (NT-PRINCIPAL, NT-SRV-INST など)
  • 詳細な命名規則についてはセクション6.2を参照してください

5.2.3. KerberosTime

  • GeneralizedTimeに基づいています
  • 常にUTC (ズールー時間) で表現されます
  • 形式: YYYYMMDDHHMMSSz
  • 一部のコンテキストではマイクロ秒精度が利用可能です
  • プロトコルではタイムゾーン変換は行いません

5.2.4. Constrained Integer Types (制約付き整数タイプ)

特定の範囲を持ついくつかの整数タイプ:

  • Int32 - 32ビット符号付き整数 (-2147483648..2147483647)
  • UInt32 - 32ビット符号なし整数 (0..4294967295)
  • Microseconds - マイクロ秒 (0..999999)
  • 実装間で一貫したエンコーディングに使用されます

5.2.5. HostAddress and HostAddresses (ホストアドレスとホストアドレス群)

HostAddress (ホストアドレス)

  • ネットワークアドレスを識別します
  • アドレスタイプとアドレスデータを含みます
  • IPv4, IPv6, およびその他のアドレスファミリーをサポートします
  • アドレスタイプ値についてはセクション7.5.3を参照してください

HostAddresses (ホストアドレス群)

  • HostAddressのシーケンスです
  • チケットの使用を特定のアドレスに制限するために使用されます
  • 空のシーケンスは任意のアドレスを意味します (ポリシーで許可されている場合)

5.2.6. AuthorizationData (認可データ)

  • チケット内の認可情報を運びます
  • 拡張可能な型付き穴メカニズムです
  • 様々な認可データタイプが定義されています
  • 複雑な認可ポリシーのためにネストできます
  • 認可データタイプについてはセクション7.5.4を参照してください

5.2.7. PA-DATA (事前認証データ)

事前認証データ (Pre-Authentication Data):

  • 事前認証メカニズムのための型付き穴です
  • padata-typeとpadata-valueを含みます
  • 事前認証のためにAS-REQで使用されます
  • 新しい事前認証方法のために拡張可能です
  • padataタイプについてはセクション7.5.2を参照してください

5.2.8. KerberosFlags

  • フラグのためのビット文字列タイプです
  • チケットとKDCオプションで使用されます
  • 様々なフラグのために特定のビット位置が定義されています
  • エンコーディングで適切にパディングされなければなりません (MUST)

EncryptionKey (暗号化鍵)

  • 鍵タイプと鍵値を含みます
  • 鍵タイプは暗号化アルゴリズムを識別します
  • 鍵値は不透明なオクテット文字列です

EncryptedData (暗号化データ)

  • 暗号化された情報を含みます
  • 暗号化タイプを指定します
  • 鍵バージョン番号を含みます (オプション)
  • 暗号文を含みます

Checksum (チェックサム)

  • 完全性チェックサムを含みます
  • チェックサムタイプを指定します
  • チェックサム値を含みます

実装上の注意

これらの基本タイプは:

  • すべてのKerberosメッセージの基礎です
  • 相互運用性のために一貫して実装されなければなりません (MUST)
  • RFC 3961で定義された暗号化フレームワークと統合されます
  • 将来の拡張のために慎重に設計されています

完全なASN.1タイプ定義については, 以下を参照してください:

  • RFC 4120のセクション5.2
  • 付録A - 完全なASN.1モジュール