示例#1
0
文件: User.php 项目: rk4an/centreon
 /**
  * Constructor
  *
  * @param int $userId
  */
 public function __construct($userId)
 {
     $contactObj = new UserModel();
     $paramArr = array('user_id', 'firstname', 'lastname', 'login', 'is_admin');
     $params = $contactObj->getParameters($userId, $paramArr);
     if (!is_array($params) || !count($params)) {
         throw new Exception('Unknown user id');
     }
     $this->id = $params['user_id'];
     $this->name = $params['firstname'] . ' ' . $params['lastname'];
     $this->login = $params['login'];
     $this->admin = $params['is_admin'];
     $this->timezone = $this->getTimezone();
 }
 /**
  * 
  * @param string $login
  * @param string $password
  * @return boolean
  */
 public static function checkPassword($login, $password)
 {
     $loginResult = false;
     $userId = User::getIdByParameter('login', array($login));
     if (is_array($userId) && count($userId) > 0) {
         $user = User::getParameters($userId[0], array('password'));
         $explodedStoredPassword = explode('::', $user['password']);
         $hashedPassword = hash_pbkdf2('sha256', $password, $explodedStoredPassword[0], $explodedStoredPassword[1], 183);
         if ($explodedStoredPassword[2] === $hashedPassword) {
             $loginResult = true;
         }
     }
     return $loginResult;
 }
示例#3
0
 public function testGetParametersBadColumns()
 {
     $this->setExpectedException('PDOException', '', '42S22');
     User::getParameters(1, 'test_error');
     User::getParameters(1, array('name', 'test_error'));
 }