PEAR::Auth 次期バージョン1.3.x

PHP::PEAR

2006年3月3日にPEAR::Authの最新バージョン1.3シリーズがstableになりました。
一番大きな改善点は

Frontendという概念の追加(DrawLoginの廃止)
loginCallback, logoutCallbackという概念の追加
postUsername, postPasswordという概念の追加
advancedsecurityという概念の追加
session_regenerate_idの標準装備
MDB, PEARコンテナ再構築

とかなり変わっている。

Frontendとは、
要するにログイン画面自体のこと。
以前はログイン画面を表示する関数を指定するか、
DrawLogin?というメソッドをオーバーライドする形でログイン画面を設定していたが、
今回は完全に独立したクラスとなっている。
(使用するクラスを指定できないようなので、使いやすいかどうかは何とも言えない。)

DrawLogin?が廃止といっても、
互換性は保たれているようだ。
(DrawLogin?という名前のメソッドがあればそのまま使う仕様)

loginCallback, logoutCallbackとは、
ログインした瞬間、およびログアウトした瞬間に呼び出される関数(メソッド)。
ここに初期データをセッションに格納したり、
ログイン、ログアウトログを取得する関数(メソッド)を指定しておく。
結構”最初の一回目だけ”っていうので苦労していたのでありがたい機能だ。

postUsername, postPasswordとは、
ログイン画面で使用している「ユーザー名」、「パスワード」に当たるエレメント名。
以前はこの辺りをこねくり回して使わなければならなかったが、
そのあたりがスマートに利用できる。

advancedsecurityとは、
その名の通りログイン過程でのセキュリティーチェックを強化したもの。
man-in-the-middle attack(中間者攻撃)対策だと豪語している。
セッションクッキーのチェック
リモートアダーのチェック
ユーザーエージェントのチェック
などが行われる。
認証前と認証後でそれぞれが異なっている場合、
認証をはじく仕組みだ。
必要に応じて利用すると良い。
(ケータイサイトでは利用できないな。)

session_regenerate_idの標準装備とは、
標準装備されたのだ。。。
前回はログインが成立した時点で、
session_regenerate_idを設置しなければならなかったが、
今回はsetAuthが発動した時点でsession_regenerate_idが呼び出される。
なので改めてsession_regenerate_idを呼び出す必要ない。

ただ、この仕様だとPEARのマニュアル通りに使うと、
うまく動かない気がする。
現状、標準マニュアルは何も変更されていないようだ。
もう少し詳しく調べてから使い方とか載せようと思う。


お名前:


トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Third Project
証券会社ランキング比較