PEAR AUTHでSOAP5

トラックバック(0) コメント(0)
PEAR::AUTHを利用して認証をするときに
動作の確認をしたい場合
PEARのマニュアルのサンプルが非常によいので参考に
pear install Auth
pear install Log

あたりをインストールして


<?php
require_once "Auth.php";
require_once
'Log.php';
require_once
'Log/observer.php';

// ログイン画面を表示するコールバック関数
function loginFunction($username = null, $status = null, &$auth = null)
{
    
/*
     * HTML 出力を変更し、作成するアプリケーションに
     * あわせるようにします
     */
    
echo "<form method=\"post\" action=\"".$_SERVER['PHP_SELF']."\">";
    echo
"ユーザ名: <input type=\"text\" name=\"username\"><br/>";
    echo
"パスワード: <input type=\"password\" name=\"password\"><br/>";
    echo
"<input type=\"submit\">";
    echo
"</form>";
}

class
Auth_Log_Observer extends Log_observer {

    var
$messages = array();

    function
notify($event) {

        
$this->messages[] = $event;

    }

}

$options = array(
        
'enabelLogging' => true,
'wsdl' => 'http://SOAPのURL/Login?wsdl',
'method' => 'loginメソッド',
'usernamefield' => 'user_idのフィールド名',
'passwordfield' => 'passwordのフィールド名',
'matchpasswords' => false,
'_features' => array(),

        );
$a = new Auth("Array", $options, "loginFunction");

$infoObserver = new Auth_Log_Observer(PEAR_LOG_INFO);

$a->attachLogObserver($infoObserver);

$debugObserver = new Auth_Log_Observer(PEAR_LOG_DEBUG);

$a->attachLogObserver($debugObserver);

$a->start();

if (
$a->checkAuth()) {
    
/*
     * サイトに出力する内容をここに書きます
     */
    
print "認証に成功しました。<br/>";
}

print
'<h3>ログ出力</h3>'
    
.'<b>PEAR_LOG_INFO レベルのメッセージ</b><br/>';

foreach (
$infoObserver->messages as $event) {
    print
$event['priority'].': '.$event['message'].'<br/>';
}

print
'<br/>'
    
.'<b>PEAR_LOG_DEBUG レベルのメッセージ</b><br/>';

foreach (
$debugObserver->messages as $event) {
    print
$event['priority'].': '.$event['message'].'<br/>';
}

print
'<br/>';
?>

こんな感じでログが見れる
場合によってログアウト画面を作成したりしてテストすると良い

トラックバック(0)

このブログ記事を参照しているブログ一覧: PEAR AUTHでSOAP5

このブログ記事に対するトラックバックURL: http://kashioka.net/cgi-bin/mt/mt-tb.cgi/186

コメントする

最近のブログ記事

windows XP でネットワークが表示されない
システムが不安定になっていたマシンがあっ…
MySqlインサート時の文字化け
最近は全部UTF8で作成しちゃっててPH…
Vistaにおけるhostsファイルの書き換え
DNS設定が完了するまでhostsファイ…