Exemple #1
0
 public function ldap()
 {
     $authen = false;
     $ua = base64_encode($_SERVER['HTTP_USER_AGENT']);
     $apiKey = Yii::$app->params['apiKey'];
     $password = base64_encode(md5($this->password));
     $url = Yii::$app->params['authUrl'] . "/{$ua}/{$apiKey}/{$password}/{$this->username}/json";
     $ldap = json_decode(Curl::getData($url));
     if (isset($ldap->success) && $ldap->success) {
         $user = User::findOne(['username' => $this->username]);
         if (empty($user) || $user === null) {
             if ($this->allowAddUser) {
                 $this->addUser($ldap);
             }
         } else {
             User::updateAll(['password_hash' => Password::hash($this->password)], ['username' => $this->username]);
         }
         if ($this->db()) {
             $authen = true;
         }
     }
     return $authen;
 }