diff --git a/Services/Authentication/classes/class.ilAuthBase.php b/Services/Authentication/classes/class.ilAuthBase.php index e73c92716507..8702a090ae29 100644 --- a/Services/Authentication/classes/class.ilAuthBase.php +++ b/Services/Authentication/classes/class.ilAuthBase.php @@ -136,6 +136,7 @@ protected function loginObserver($a_username,$a_auth) if(!$user->getActive()) { $this->status = AUTH_USER_INACTIVE; + $a_auth->logout(); return; } @@ -143,6 +144,7 @@ protected function loginObserver($a_username,$a_auth) if(!$user->checkTimeLimit()) { $this->status = AUTH_USER_TIME_LIMIT_EXCEEDED; + $a_auth->logout(); return; } @@ -156,6 +158,7 @@ protected function loginObserver($a_username,$a_auth) if (!preg_match("/^".$clientip."$/", $_SERVER["REMOTE_ADDR"])) { $this->status = AUTH_USER_WRONG_IP; + $a_auth->logout(); return; } } @@ -165,6 +168,7 @@ protected function loginObserver($a_username,$a_auth) ilObjUser::hasActiveSession($user_id)) { $this->status = AUTH_USER_SIMULTANEOUS_LOGIN; + $a_auth->logout(); return; }