nojimage/cakephp-login-attempts

LoginAttempts plugin for CakePHP 3

Installs: 2 266

Dependents: 0

Suggesters: 0

Stars: 2

Watchers: 1

Forks: 0

Open Issues: 0

Type:cakephp-plugin

v1.1.0 2019-04-19 08:05 UTC

README

Software License Build Status Codecov Latest Stable Version

Requirements

  • CakePHP >= 3.5

Installation

You can install this plugin into your CakePHP application using composer.

The recommended way to install composer packages is:

composer require nojimage/cakephp-login-attempts

Load plugin

(CakePHP >= 3.6.0) Load the plugin by adding the following statement in your project's src/Application.php:

$this->addPlugin('LoginAttempts');

(CakePHP <= 3.5.x) Load the plugin by adding the following statement in your project's config/bootstrap.php file:

Plugin::load('LoginAttempts');

Create table

run migration command:

bin/cake migrations migrate -p LoginAttempts

Usage

Use LoginAttempts.Form authenticate instead of Form.

        $this->loadComponent('Auth', [
            'authenticate' => [
                'LoginAttempts.Form' => [
                    'fields' => ['username' => 'email'],
                    'attemptLimit' => 5,
                    'attemptDuration' => '+5 minutes',
                ],
            ],
        ]);

LoginAttempts.Form Options

attemptLimit

If the num of login failures of the user exceeds attemptLimit during attemptDuration, the user's login is not permitted.

default: 5

attemptDuration

If the num of login failures of the user exceeds attemptLimit during attemptDuration, the user's login is not permitted.

default: '+5 minutes'

attemptAction

The number of attempts is stored separately for this key. Use when there are multiple login forms and you want to set restrictions separately.

default: 'login'