diff --git a/app/Providers/RouteServiceProvider.php b/app/Providers/RouteServiceProvider.php index cca2c9c15..fbd7fb02c 100644 --- a/app/Providers/RouteServiceProvider.php +++ b/app/Providers/RouteServiceProvider.php @@ -80,5 +80,9 @@ protected function configureRateLimiting() RateLimiter::for('api', function (Request $request) { return Limit::perMinute(60)->by($request->user()?->id ?: $request->ip()); }); + + RateLimiter::for('login', function (Request $request) { + return Limit::perMinute(10)->by($request->ip() . '|' . $request->input('email')); + }); } } diff --git a/routes/web.php b/routes/web.php index 70fbbe3af..c50182b14 100644 --- a/routes/web.php +++ b/routes/web.php @@ -91,8 +91,14 @@ // Redirect if apps not installed Route::group(['middleware' => ['installed', 'xss_sanitization']], function () { + + Route::post('/login', 'Auth\LoginController@authenticate') + ->middleware('throttle:login') + ->name('login'); + Auth::routes([ 'register' => false, + 'login' => false, ]); // OTP Routes