diegomagikal/laravel-password

Protect your users from entering dumb and common passwords

2.0.0 2018-10-07 19:31 UTC

This package is auto-updated.

Last update: 2024-11-08 09:23:53 UTC


README

Latest Stable Version License Quality Score Total Downloads

Guard your users from security problems by preventing them from having dumb passwords

Introduction

This package can be used to verify the user provided password is not one of the top 10,000 worst passwords as analyzed by a respectable IT security analyst. Read about all here, here(wired) or here(telegram)

Installation

PHP 5.5+ or HHVM 3.3+, and Composer are required.

To get the latest version of Laravel Password, simply add the following line to the require block of your composer.json file.

"diegomagikal/laravel-password": "*"

You'll then need to run composer install or composer update to download it and have the autoloader updated.

  • If you're on Laravel 5.5 or above, that's all you need to do! Check out the usage examples below.
  • If you're on Laravel < 5.5, you'll need to register the service provider. Open up config/app.php and add the following to the providers array:
DiegoMagikal\CheckPassword\CheckPasswordServiceProvider::class

Usage

Use the rule checkpassword in your validation like so:

/**
 * Get a validator for an incoming registration request.
 *
 * @param  array  $data
 * @return \Illuminate\Contracts\Validation\Validator
 */
protected function validator(array $data)
{
    return Validator::make($data, [
        'name' => 'required|max:255',
        'email' => 'required|email|max:255|unique:users',
        'password' => 'required|min:6|checkpassword|confirmed',
    ]);
}

Error shows on the page like so:

screen shot 2016-07-02 at 2 12 14 pm

screen shot 2016-07-02 at 1 22 45 pm

By default, the error message returned is This password is just too common. Please try another!.

You can customize the error message by opening resources/lang/en/validation.php and adding to the array like so:

  'checkpassword' => 'You are using a dumb password abeg',

Change log

Please see CHANGELOG for more information on what has changed recently.

Contributing

Please feel free to fork this package and contribute by submitting a pull request to enhance the functionalities.

Inspiration

How can I thank you?

Why not star the github repo? I'd love the attention!

License

The MIT License (MIT). Please see License File for more information.