Esempio n. 1
0
 public function __construct($id, $module = null)
 {
     //验证用户是否登录
     $currentUser = \Yii::$app->session->get(Code::SYS_USER_LOGIN_SESSION);
     $cookieSign = \Yii::$app->request->cookies->getValue(\Yii::$app->params['sys_suiuu_sign']);
     $enPassword = \Yii::$app->params['encryptPassword'];
     $enDigit = \Yii::$app->params['encryptDigit'];
     if (!isset($currentUser) && empty($cookieSign)) {
         return $this->redirect('/login');
     } else {
         if (isset($currentUser)) {
             $this->userObj = $currentUser;
         } else {
             if (!empty($cookieSign)) {
                 $aes = new Aes();
                 $userSign = $aes->decrypt($cookieSign, $enPassword, $enDigit);
                 $this->__sysUserService = new SysUserService();
                 $currentUser = $this->__sysUserService->findUserByUserSign($userSign);
                 if (isset($currentUser)) {
                     $this->userObj = $currentUser;
                     \Yii::$app->session->set(Code::SYS_USER_LOGIN_SESSION, $currentUser);
                 } else {
                     return $this->redirect('/login');
                 }
             }
         }
     }
     parent::__construct($id, $module);
 }
 /**
  * 根据临时加密密码 获取用户密码
  * @param $password
  * @return string
  */
 private function getDecryptPassword($password)
 {
     $enPassword = \Yii::$app->params['encryptPassword'];
     $enDigit = \Yii::$app->params['encryptDigit'];
     return Aes::decrypt($password, $enPassword, $enDigit);
 }