0

ユーザーが非常に特定の機会に認証されることをZendに伝える必要がありますが、この目的のためにAuthAdapterを構築したくありません。

私はこのようなものが欲しい:

if ($user == 'sam') {

    // this user is valid, tell Zend to authenticate
    Zend_Auth::authenticate(true);

}

言い換えれば、ユーザーが有効かどうかを判断するタスクを認証アダプターに委任したくないのです。Zendに「ねえ、この男は私と一緒にいるので、認証Cookieを設定して使用させます。私のサイト"。

これを行う方法はありますか?

4

2 に答える 2

1

Zend_Auth ストレージに書き込むことで、これを行うことができます。

$userData = (object)array('username' => 'Johny23');
Zend_Auth::getInstance()->getStorage()->write($userData);

これを行うと、Zend はセッションを処理する新しい Zend_Auth_Storage_Session オブジェクトを自動的に作成します。

そして、次の方法で確認できます。

$auth = Zend_Auth::getInstance();
if($auth->hasIdentity()){
    echo 'welcome back, ' . $auth->getIdentity()->username;
}
于 2013-03-07T18:09:49.433 に答える