Universal AAA Infrastructure

AAAとは?

あるユーザがインターネットの資源へのアクセスもしくはサービスの利用を望む時,AAAはサービス提供者にとって必須のものである.AAAはAuthentication (認証),Authorization (認可),そしてAccounting (課金)から成り立っている.

  • Authenticationはサービスを要求したユーザが信頼できるかどうかを確かめる処理のことである.
  • Authorizationはユーザに資源へのアクセス,またはサービス利用の権限を与える処理である.
  • Accountingはユーザの利用情報を収集する処理である.

例えばアリスがラップトップでインターネットへアクセスしたいとすると,それぞれ以下のようになる.

  • Authentication: ISPはインターネットアクセスのリクエストをしたユーザが本当にアリスであることを確かめる.
  • Authorization: ISPはアリスがインターネットへのアクセス権限を持っているのかを確かめる.もし持っているのなら,ISPはアリスへインターネットアクセスのためのセッションキーを与える.
  • Accounting: ISPはアリスの利用情報を収集する.これは例えば課金等に利用される.

ユニバーサルAAAインフラストラクチャとは?

ひとつの管理者のドメイン(realm)内で2,3のサービスに対するAAAシステムを構築することは容易であろう.しかしインターネットは膨大な数のrealmで構成されており,それらは様々なサービスを提供し,ユーザは移動する(自身が所属していないrealmでサービスを受けたいと望むことがあるかもしれない).上記のような環境(複数のrealm,多様なサービス,ユーザのモビリティ等)において利用される各サービスにAAA機能を実装するには多くの問題が起こり得る.ユニバーサルAAAインフラストラクチャはAAAの機能を必要とする全てのサービスに対して,同一のインタフェースを提供することを目的とするものである.

ユニバーサルAAAインフラストラクチャへの道のり

ユニバーサルAAAインフラストラクチャを構築するための第一歩として,我々はIETFで標準化されたアーキテクチャを実装し,試験運用することによってその評価を行なっている.我々はユニバーサルAAAインフラストラクチャの構築にIETFのAAAアーキテクチャを採用し,そのアーキテクチャがふさわしいかどうかを確かめている.もしふさわしくないのであれば,ユニバーサルAAAインフラストラクチャに向けた新たなAAAアーキテクチャを設計するつもりである.

IETF AAAインフラストラクチャの構築

IETFはDiameter Base Protocol[RFC3588]をAAAクライアントとAAAサーバの間で,安全性と信頼性をもってAAA情報を運搬するAAAプロトコルとして標準化している.Diameter Base ProtocolはRADIUS[RFC2865]の後継である.RADIUSは現在のインターネットで広く使用されているが,主にシングルドメインでの使用を想定して設計されており,安全性と信頼性のあるメッセージ伝送の仕組みは定義されていない.

Diameter Base ProtocolはAAAクライアントとサーバの間でAAA情報を運搬するのみである.特定のサービスに対する機能はDiameter Base Protocolの上端においてDiameter applicationとして定義されている.我々は以下のプロトコルを実装し,配布している.

  • freeDiameter: Diameter Base Protocolの実装(NICTによる)
  • DiamEAP: Diameter EAP applicationの実装.インターネットアクセスを望むユーザを認証し,認可する機能を持つ.