■管理者パスワードを忘れた時に強制的にログインする
パスワードを忘れたりなくしたりした場合に下記の手順を行えば強制的にログインする事ができる。
パスワードを再設定した後は速やかに元の状態に戻すこと
手順: LC_Page_Admin_Index.phpを編集する 管理画面のメンバー管理から管理者情報を設定する LC_Page_Admin_Index.phpを元の状態に戻す ログインができるか確認する
■LC_Page_Admin_Index.phpを編集する
/** * Page のアクション. * * @return void */ public function action() { // パラメーター管理クラス $objFormParam = new SC_FormParam_Ex(); switch ($this->getMode()) { case 'login': //ログイン処理 $this->lfInitParam($objFormParam); $objFormParam->setParam($_POST); // ↓↓↓コメントアウト↓↓↓ // $this->arrErr = $this->lfCheckError($objFormParam); if (SC_Utils_Ex::isBlank($this->arrErr)) { $this->lfDoLogin($objFormParam->getValue('login_id')); SC_Response_Ex::sendRedirect(ADMIN_HOME_URLPATH); } else { // ブルートフォースアタック対策 // ログイン失敗時に遅延させる sleep(LOGIN_RETRY_INTERVAL); SC_Utils_Ex::sfDispError(LOGIN_ERROR); } break; default: break; } // 管理者ログインテンプレートフレームの設定 $this->setTemplate(LOGIN_FRAME); }
チェックを素通りするので何をいれてもログイン出来る状態になる
■管理画面のメンバー管理から管理者情報を設定する
管理画面にログインして『システム設定』→『メンバー管理』へ移動する
編集対象のメンバーの『編集』をクリックする
■LC_Page_Admin_Index.phpを元の状態に戻す
/** * Page のアクション. * * @return void */ public function action() { // パラメーター管理クラス $objFormParam = new SC_FormParam_Ex(); switch ($this->getMode()) { case 'login': //ログイン処理 $this->lfInitParam($objFormParam); $objFormParam->setParam($_POST); // ↓↓↓コメントアウトを元に戻す↓↓↓ $this->arrErr = $this->lfCheckError($objFormParam); if (SC_Utils_Ex::isBlank($this->arrErr)) { $this->lfDoLogin($objFormParam->getValue('login_id')); SC_Response_Ex::sendRedirect(ADMIN_HOME_URLPATH); } else { // ブルートフォースアタック対策 // ログイン失敗時に遅延させる sleep(LOGIN_RETRY_INTERVAL); SC_Utils_Ex::sfDispError(LOGIN_ERROR); } break; default: break; } // 管理者ログインテンプレートフレームの設定 $this->setTemplate(LOGIN_FRAME); }