@@ -126,21 +126,20 @@ public function login(Request $request)
126126 return $ this ->sendFailedLoginResponse ($ request );
127127 }
128128
129- $ validCredentials = password_verify ($ request ->input ('password ' ), $ user ->password );
129+ if (! password_verify ($ request ->input ('password ' ), $ user ->password )) {
130+ return $ this ->sendFailedLoginResponse ($ request , $ user );
131+ }
132+
130133 if ($ user ->use_totp ) {
131134 $ token = str_random (64 );
132- $ this ->cache ->put ($ token , ['user_id ' => $ user ->id , 'valid_credentials ' => $ validCredentials ], 5 );
135+ $ this ->cache ->put ($ token , ['user_id ' => $ user ->id , 'valid_credentials ' => true ], 5 );
133136
134137 return redirect ()->route ('auth.totp ' )->with ('authentication_token ' , $ token );
135138 }
136139
137- if ($ validCredentials ) {
138- $ this ->auth ->guard ()->login ($ user , true );
139-
140- return $ this ->sendLoginResponse ($ request );
141- }
140+ $ this ->auth ->guard ()->login ($ user , true );
142141
143- return $ this ->sendFailedLoginResponse ($ request, $ user );
142+ return $ this ->sendLoginResponse ($ request );
144143 }
145144
146145 /**
@@ -161,12 +160,13 @@ public function totp(Request $request)
161160
162161 /**
163162 * Handle a login where the user is required to provide a TOTP authentication
164- * token. In order to add additional layers of security, users are not
165- * informed of an incorrect password until this stage, forcing them to
166- * provide a token on each login attempt.
163+ * token.
167164 *
168165 * @param \Illuminate\Http\Request $request
169166 * @return \Illuminate\Http\RedirectResponse|\Illuminate\Http\Response
167+ * @throws \PragmaRX\Google2FA\Exceptions\IncompatibleWithGoogleAuthenticatorException
168+ * @throws \PragmaRX\Google2FA\Exceptions\InvalidCharactersException
169+ * @throws \PragmaRX\Google2FA\Exceptions\SecretKeyTooShortException
170170 */
171171 public function loginUsingTotp (Request $ request )
172172 {
@@ -181,7 +181,7 @@ public function loginUsingTotp(Request $request)
181181 return $ this ->sendFailedLoginResponse ($ request );
182182 }
183183
184- if (is_null ($ request ->input ('2fa_token ' )) || ! array_get ( $ cache , ' valid_credentials ' ) ) {
184+ if (is_null ($ request ->input ('2fa_token ' ))) {
185185 return $ this ->sendFailedLoginResponse ($ request , $ user );
186186 }
187187
0 commit comments