@blog.justoneplanet.info

日々勉強

ZendFramework Zend_Auth(認証)

以下のようにするとZend_Authコンポーネントを使った認証が可能である。

<?php
require_once 'Zend/Db.php';
require_once 'Zend/Auth/Adapter/DbTable.php';

$params = array(
    'host' => 'localhost',
    'username' => 'name',
    'password' => 'pass',
    'dbname' => 'dbname',
);
$dbh = Zend_Db::factory('Pdo_Mysql', $params);

$auth = new Zend_Auth_Adapter_DbTable($dbh, 'user', 'id', 'password');
$auth->setIdentity($userid_from_user_input);
$auth->setCredential($password_from_user_input);
if($auth->isValid()){
    //succeed;
    //$auth->getResultRowObject();
}
else{
    //failed;
}

Zend_Authではファイルシステムを利用した認証や、Basic認証、ダイジェスト認証などを行う事ができる。

■Basic認証

本題とは関係ないが備忘録として書き留めておく。

パスワードファイルの生成

以下のようにしてパスワードファイルを生成する。

sudo htpasswd -c /etc/httpd/.htpasswd admin
ユーザの追加
sudo htpasswd /etc/httpd/.htpasswd taro

.htaccessの記述

AuthUserFile /etc/httpd/.htpasswd
AuthGroupFile /dev/null
AuthName "Input ID and Password, Now!"
AuthType Basic
require valid-user

コメントはまだありません»

No comments yet.

RSS feed for comments on this post.TrackBack URL

Leave a comment