sanchescom / lumen-login-throttling
Lumen login throttling.
Installs: 1 031
Dependents: 0
Suggesters: 0
Security: 0
Stars: 1
Watchers: 1
Forks: 0
Open Issues: 0
Requires
- php: ~5.6|~7.0
- laravel/lumen-framework: ~5.8
Requires (Dev)
- phpunit/phpunit: ~4.0||~5.0||~6.0
- squizlabs/php_codesniffer: ^2.3
This package is auto-updated.
Last update: 2024-03-26 21:09:12 UTC
README
Laravel Login Throttling for Lumen framework
Installing
Require this package, with Composer, in the root directory of your project.
composer require sanchescom/lumen-login-throttling
Usage
<?php namespace App\Http\Controllers; use Illuminate\Http\Request; use Sanchescom\Foundation\Auth\AuthenticatesUsers; use Laravel\Lumen\Routing\Controller; class AuthController extends Controller { use AuthenticatesUsers; /** @var int */ protected $maxAttempts = 3; /** @var int */ protected $decayMinutes = 5; /** * Handle a login request to the application. * * @param \Illuminate\Http\Request $request * * @throws \Illuminate\Validation\ValidationException * * @return mixed */ public function login(Request $request) { $this->validateLogin($request); if ($this->hasTooManyLoginAttempts($request)) { $this->fireLockoutEvent($request); return $this->sendLockoutResponse($request); } if ($this->attemptLogin($request)) { return $this->sendLoginResponse($request); } $this->incrementLoginAttempts($request); return $this->sendFailedLoginResponse($request); } }