5

だから私はYiiフレームワークを学んでいます、そしてあなたが最初にsceletonアプリケーションを作成するとき、ビルトインのadmin/demoアカウントでそれがあります。Webサーバーにアップロードした後でも、それらの原因を削除したいのですが、引き続きログインできます。では、どこで削除できますか?

4

2 に答える 2

12

フォルダーprotected/components/には、これらのデフォルトのログインが表示されるファイルUserIdentity.phpがあり、それらを変更/削除できます。

次のように、データベースを使用して users テーブルに対して認証できます。

class UserIdentity extends CUserIdentity
{
 private $_id;
 public function authenticate()
 {
     $record=User::model()->findByAttributes(array('username'=>$this->username));
     if($record===null)
         $this->errorCode=self::ERROR_USERNAME_INVALID;
     else if($record->password!==md5($this->password))
         $this->errorCode=self::ERROR_PASSWORD_INVALID;
     else
     {
         $this->_id=$record->id;
         $this->setState('title', $record->title);
         $this->errorCode=self::ERROR_NONE;
     }
     return !$this->errorCode;
 }

 public function getId()
 {
     return $this->_id;
 }
}

ガイドのこの記事を確認してください。

于 2012-05-27T08:33:59.383 に答える
6

protected / componentsの下にUserIdentity.phpがあり、ユーザーとそのパスワードは、配列を使用して認証機能で宣言されます。

public function authenticate()
{
    $users=array(
        // username => password
        'demo'=>'demo',
        'admin'=>'admin',
    );

Yiiでの認証の使用方法に関するより具体的な情報は、Yiiの公式ドキュメントの認証と承認のサブセクションにあります。

于 2012-05-27T08:39:20.800 に答える