---
# System prepended metadata

title: Laravel 登入失敗次數限制 - 簡易版本
tags: [' login', ' decayMinutes', Laravel, ' rateLimit', ' maxAttempts']

---

---
tags: Laravel, rateLimit, login, maxAttempts, decayMinutes
---

# Laravel 登入失敗次數限制 - 簡易版本

Laravel 本身已實現了登入失敗次數限制的功能。在使用 Laravel 的登入驗證時，登入失敗次數限制預設是：

-   失敗5次，`1分鐘後` 才可再次登入

若要設定：
- 失敗5次，`15分鐘後` 才可再次登入

說明：

> 在 `LoginController` 類中，增加自訂方法覆蓋 `AuthenticatesUsers` 類原本的方法：
> 
> -   `$maxAttempts` 屬性是設定登入失敗次數。
> -   `$decayMinutes` 屬性是登入失敗達上限後，須等待的分鐘數。
> 
> 如果是要修改 Laravel 原本的錯誤次數設定，新增 `$maxAttempts` 屬性及 `$decayMinutes` 屬性並設定值即可完成。


版本
--

Laravel 5.8 以上

改寫登入類別設定
--

_app\\Http\\Controllers\\Auth\\LoginController.php_

```php=
class LoginController extends Controller
{
    use AuthenticatesUsers;

    ...

    /**
     * The maximum number of attempts to allow.
     *
     * @var int
     */
    protected $maxAttempts = 5;

    /**
     * The number of minutes to throttle for.
     *
     * @var int|float|int[]|float[]
     */
    protected $decayMinutes = 15;

```

