TOP設計・移行・活用> はじめに
SledgeによるWebアプリケーションフレームワーク入門
SledgeによるWebアプリケーションフレームワーク入門

第3回:認証
著者:ライブドア  池邉 智洋   2005/6/27
1   2  3  4  次のページ
はじめに

   今日のWebアプリケーションにおいて、認証システムはほぼ必須の機能であるといっても過言ではありません。今回はWebアプリケーションにおける認証の考え方やしくみ、Sledgeによる実装について解説したいと思います。
認証とは

   もっとも身近な認証の例として、読者のみなさんも会員制のWebサイトなどを利用されたことがあるかと思います。このようなサイトでは個人が認識され、自分専用のデータなどが利用できます。また、有料サイトでは認証されたユーザのサービスプランによって、提供される機能に差がつけられている場合もあります。

   Webアプリケーション以外の例として、UNIX系OSのユーザ管理を挙げることができます。UNIX系OSでは、ユーザIDとパスワードを持っている人しかコンピュータの資源を使用することができません。また、使用できたとしても特権ユーザ(root)と他のユーザでは、できることやアクセスできる範囲に差があります。これは、今誰がOSを操作しているのか、その人はどういう人であるかを認識していることになります。

   つまり、認証とは資源にアクセスする人(クライアント)が本当にその権限を持った人なのかということを確認し、証明する機構であると言えます。


認証の3要素

   認証の重要な要素として、Authentication(認証)、Authorization(許可)、Accounting(管理)の頭文字を取って「3つのA」があります。

Authentication(認証)
認証ではユーザが入力したID、パスワードが正確なものかを確認し、ユーザ情報を取得します(注1)。例えば、ログインフォームにID、パスワードを入力してサブミットする際の処理です。
Authorization(許可)
許可では、現在アクセスしてきているユーザに与えられている権限をチェックします。例えば、認証が必要なエリアを閲覧する際の処理になります。認証が必要な場合はログインフォームの表示を行ないます。
Accounting(管理)
管理では認証後のユーザの動作、位置情報の追跡などを行ないます。例えば、有料コンテンツで課金がされなかった場合はアカウントの停止処理などを行なうことになります。

表1:認証に重要な「3つのA」


※注1: 生体認証なども考えられますが、Webアプリケーションにおける現実的な実装としてID、パスワード方式のみを解説していきます。

   今回はWebアプリケーションフレームワークによる実装として、表1の「3つのA」のうち、Authentication(認証)とAuthorization(許可)について解説をしていきます。

1   2  3  4  次のページ


株式会社ライブドア 池邉 智洋
著者プロフィール
株式会社ライブドア  池邉 智洋
ネットサービス事業本部 システムグループ マネージャー。2001年10月よりライブドア(当時オン・ザ・エッヂ)にて受託開発業務のWebアプリケーション開発に従事。2003年11月よりlivedoorのポータル化にたずさわり、各種サービスの開発を行う。個人的にCPANモジュールやApacheモジュールの公開も行っている。


INDEX
第3回:認証
はじめに
  Webアプリケーションでの認証
  Sledgeでの認証処理の実装
  ログインフォーム