私は既にログインフォームを作成しましたが、テーブルに対して認証できます。Zend_Authを実装する最良の方法はどこにありますか?
Zend_Authを使用する必要はありますか?
Zend_Authを実装する最良の方法はどこにありますか?
おかげで、私が認証するために、以下の方法を使用し
私は既にログインフォームを作成しましたが、テーブルに対して認証できます。Zend_Authを実装する最良の方法はどこにありますか?
Zend_Authを使用する必要はありますか?
Zend_Authを実装する最良の方法はどこにありますか?
おかげで、私が認証するために、以下の方法を使用し
:
function authenticate ($data)
{
$db = \Zend_Db_Table::getDefaultAdapter();
$authAdapter = new \Zend_Auth_Adapter_DbTable($db);
$authAdapter->setTableName('usuarios2');
$authAdapter->setIdentityColumn('user');
$authAdapter->setCredentialColumn('password');
$authAdapter->setCredentialTreatment('MD5(?) and active = 1');
$authAdapter->setIdentity($data['user']);
$authAdapter->setCredential($data['password']);
$auth = \Zend_Auth::getInstance();
$result = $auth->authenticate($authAdapter);
if ($result->isValid()) {
if ($data['public'] == "1") {
\Zend_Session::rememberMe(1209600);
} else {
\Zend_Session::forgetMe();
}
return TRUE;
} else {
return FALSE;
}
}
$データは、私はこのような関数を呼び出すコントローラから、ログインフォームからPOSTリクエストです: 認証($この - > _要求 - >でgetPost())訴訟において
ユーザーの身元を確認したい場合は、あなただけの:
$auth = Zend_Auth::getInstance();
if ($auth->hasIdentity()) {
$identity = $auth->getIdentity(); //this is the user in my case
}
その確認された認証情報をクッキーに保存されている場合、私は(publicという名前)]チェックボックスを持っているログインフォームで
は、ユーザーがブラウザ(にZend_Session :: forgetMeを())閉じたときに、それは
削除されますotherwhiseこれは認証プロセスのクイックレビューです。
ここにはzendcastsからのチュートリアルがあります。彼らはさらにいくつかの一体化したものを提供します。
http://www.zendcasts.com/zend-acl-with-authentication-and-reflection/2009/06/
私はそれが本当に良いスタートだと思います。
あなたはZend_Auth_Adapter_Interfaceを実装する権利を持っていますか?\ – Corbin
あなたの経験が私のようなものならば、少なくとも123の完全に異なる最良の方法があるはずです。 – PurplePilot
私の答えは良いです;) http://stackoverflow.com/questions/2046608/practical-zend-acl-zend-auth-implementation-and-best-practices – SMka