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

5.4. Specifications for the AS and TGS Exchanges (ASおよびTGS交換の仕様)

5.4. Specifications for the AS and TGS Exchanges (ASおよびTGS交換の仕様)

概要

本節では, 認証サービス (Authentication Service, AS) 交換およびチケット付与サービス (Ticket-Granting Service, TGS) 交換のメッセージ構造を定義します。これらの交換は, わずかな差異を除き共通のメッセージ構造を共有します。

5.4.1. KRB_KDC_REQの定義

要求メッセージの構造はASとTGSで共通です:

共通構造

KRB_AS_REQとKRB_TGS_REQの両方が, 次を含むKDC-REQ構造を用います:

  • pvno - プロトコルバージョン番号 (5)
  • msg-type - メッセージタイプ (AS-REQまたはTGS-REQ)
  • padata - 事前認証データ (シーケンス)
  • req-body - 詳細パラメータを含む要求本体

要求本体 (KDC-REQ-BODY)

次を含みます:

  • kdc-options - 要求オプションを示すフラグ
  • cname - クライアント名 (TGS-REQではオプション)
  • realm - サービスレルム
  • sname - サービス名 (オプション)
  • from - 要求開始時刻 (オプション)
  • till - 要求終了時刻
  • rtime - 要求されたrenew-till時刻 (オプション)
  • nonce - リプレイ防止用の乱数値
  • etype - 要求する暗号化タイプ (シーケンス)
  • addresses - クライアントアドレス (オプション)
  • enc-authorization-data - 暗号化された認可データ (オプション)
  • additional-tickets - 追加チケット (オプション, TGS-REQ用)

KDCオプションフラグ

利用可能なオプションには次が含まれます:

  • FORWARDABLE, FORWARDED
  • PROXIABLE, PROXY
  • ALLOW-POSTDATE, POSTDATED
  • RENEWABLE, RENEWABLE-OK
  • ENC-TKT-IN-SKEY
  • RENEW, VALIDATE
  • その他

5.4.2. KRB_KDC_REPの定義

応答メッセージの構造はASとTGSで共通です:

共通構造

KRB_AS_REPとKRB_TGS_REPの両方がKDC-REP構造を用います:

  • pvno - プロトコルバージョン番号 (5)
  • msg-type - メッセージタイプ (AS-REPまたはTGS-REP)
  • padata - 事前認証データ (オプション)
  • crealm - クライアントレルム
  • cname - クライアント名
  • ticket - 発行されたチケット
  • enc-part - 応答の暗号化部分

暗号化部分 (EncKDCRepPart)

クライアント向けに暗号化され, 次を含みます:

  • key - セッション鍵
  • last-req - 最終要求に関する情報
  • nonce - 要求からの値 (照合用)
  • key-expiration - クライアント鍵の有効期限 (オプション)
  • flags - チケットフラグ
  • authtime - 初回認証の時刻
  • starttime - チケットが有効になる時刻 (オプション)
  • endtime - チケットの失効時刻
  • renew-till - 更新可能期限 (オプション)
  • srealm - サービスレルム
  • sname - サービス名
  • caddr - クライアントアドレス (オプション)
  • encrypted-pa-data - 暗号化された事前認証データ (オプション)

処理要件

要求の処理

  • 要求構造を検証すること
  • 事前認証を検証すること
  • ポリシーおよび制約を確認すること
  • セッション鍵を生成すること
  • 適切なフラグでチケットを発行すること
  • クライアント向けに応答を暗号化すること

応答の処理

  • 適切な鍵で応答を復号すること
  • nonceが一致することを検証すること
  • セッション鍵とチケットを取り出すこと
  • チケットの属性を検証すること
  • 後続利用のために保存すること

AS交換とTGS交換の相違

AS交換

  • クライアントは長期鍵で認証する
  • 事前認証がしばしば必要
  • 初期TGTを発行する

TGS交換

  • クライアントはTGTで認証する
  • TGTから得たセッション鍵を用いる
  • サービスチケットを発行する
  • チケットの更新および検証をサポートする

参照

メッセージの完全な仕様はRFC 4120 セクション5.4を参照してください。