예제 #1
0
 /**
  * @param string $email
  *
  * @return bool
  */
 public function requestToken($email)
 {
     try {
         $userTransfer = $this->userFacade->getUserByUsername($email);
         $passwordResetToken = $this->generateToken();
         $result = $this->persistResetPassword($passwordResetToken, $userTransfer);
         $this->sendResetRequest($email, $passwordResetToken);
         return $result;
     } catch (UserNotFoundException $exception) {
         return false;
     }
 }
예제 #2
0
파일: Auth.php 프로젝트: spryker/Auth
 /**
  * @param string $username
  * @param string $password
  *
  * @return bool
  */
 public function authenticate($username, $password)
 {
     $hasUser = $this->userFacade->hasActiveUserByUsername($username);
     if (!$hasUser) {
         return false;
     }
     $userTransfer = $this->userFacade->getUserByUsername($username);
     $isValidPassword = $this->userFacade->isValidPassword($password, $userTransfer->getPassword());
     if (!$isValidPassword) {
         return false;
     }
     $userTransfer->setLastLogin((new \DateTime())->format(\DateTime::ATOM));
     $token = $this->generateToken($userTransfer);
     $this->registerAuthorizedUser($token, $userTransfer);
     $this->userFacade->updateUser(clone $userTransfer);
     $this->session->migrate();
     return true;
 }