定制 assisted-mindfulness/pwned-validator 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

assisted-mindfulness/pwned-validator

最新稳定版本:1.0.0

Composer 安装命令:

composer require assisted-mindfulness/pwned-validator

包简介

Super simple Laravel Validator for checking password via the Pwned Passwords service of Have I Been Pwned

README 文档

README

Tests

Introducing the Pwned Password validator - a simple and effective tool for ensuring the security of your users' passwords. This package checks the user's submitted password (during registration or password change) against the HIBP Pwned Passwords database, which contains over half a billion real-world passwords that have been exposed in data breaches.

If a password is found to be pwned, it will fail validation and the user will be prevented from using it in your app. This helps to protect your users from potential security breaches and ensures that they are using strong, unique passwords. With the Pwned Password validator, you can have peace of mind knowing that your users' data is secure. Try it out today and see the difference it makes in the security of your app.

Installation

Install the package using Composer:

composer require assisted-mindfulness/pwned-validator/pwned-validator

Add the validation message to your validation lang file lang/en/validation.php :

'pwned' => 'The :attribute is not secure enough',

or use :min in the message to indicate the minimum number of times found set on the validator:

'pwned' => 'Your password is insufficiently secure as it has been found at least :min times in known password breaches, please choose a new one.',

Using the pwned validator

After installation, the pwned validator will be available for use directly in your validation rules.

return Validator::make($data, [
    'name'     => 'required|string|max:255',
    'email'    => 'required|string|email|max:255|unique:users',
    'password' => 'required|string|min:6|pwned|confirmed',
]);

Using the Rule Object

Alternatively, you can use the AssistedMindfulness\Pwned\PwnedRule Validation Rule Object instead of the pwned alias if you prefer:

return Validator::make($data, [
    'name'     => 'required|string|max:255',
    'email'    => 'required|string|email|max:255|unique:users',
    'password' => ['required', 'string', 'min:6', new \AssistedMindfulness\Pwned\PwnedRule, 'confirmed'],
]);

Limiting by the number of times the password was pwned

You can also limit rejected passwords to those that have been pwned a minimum number of times. For example, password has been pwned 3,303,003 times, however P@ssword! has only been pwned 118 times. If we wanted to block password but not P@ssword!, we can specify the minimum number as 150 like this:

'password' => 'required|string|min:6|pwned:150|confirmed',

or using the Rule object:

'password' => ['required', 'string', 'min:6', new \AssistedMindfulness\Pwned\PwnedRule(150), 'confirmed'],

License

This package is a fork of https://github.com/valorin/pwned-validator

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

统计信息

  • 总下载量: 101.05k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 2
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 0
  • Forks: 24
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2023-01-24

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固