infinitypaul / laravel-password-history-validation
防止用户重复使用近期使用过的密码
2.0.2
2024-09-11 06:34 UTC
Requires
- php: ^7.4|^8.0
Requires (Dev)
- orchestra/testbench: ^5.0|^6.0|^7.1.0|^8.0
- phpunit/phpunit: ^9.3
This package is auto-updated.
Last update: 2024-09-11 06:35:40 UTC
README
防止用户重复使用近期使用过的密码。
安装
您可以通过composer安装此包
composer require infinitypaul/laravel-password-history-validation
配置
要开始使用,您需要发布配置文件,并迁移数据库
php artisan vendor:publish --tag=password-config
根据您的项目修改配置文件,然后迁移数据库
php artisan migrate
使用方法
此包将监视模型的创建和更新事件(请检查配置文件以获取设置)并自动记录密码散列。
在您的表单请求或行内验证中,您只需实例化NotFromPasswordHistory
类,并将当前用户作为参数传递即可
<?php use Infinitypaul\LaravelPasswordHistoryValidation\Rules\NotFromPasswordHistory; $this->validate($request, [ 'password' => [ 'required', new NotFromPasswordHistory($request->user()) ] ]);
清理旧记录 - (可选)
因为我们将在您的数据库中存储散列密码,当您有大量用户时,您的数据库可能会变得很长
将PasswordHistoryTrait添加到您的用户模型中
<?php use Infinitypaul\LaravelPasswordHistoryValidation\Traits\PasswordHistoryTrait; class User extends Authenticatable { use Notifiable, PasswordHistoryTrait; }
然后您可以运行以下Artisan命令
php artisan password-history:clear
变更日志
请参阅CHANGELOG以获取更多信息。
贡献
请参阅CONTRIBUTING以获取详细信息。
安全
如果您发现任何安全相关的问题,请通过电子邮件infinitypaul@live.com而不是使用问题跟踪器。
我该如何感谢您?
为什么不星标GitHub仓库?我很希望得到关注!为什么不分享此仓库的链接到Twitter或HackerNews?传播这个信息!
别忘了关注我的twitter!
谢谢!Edward Paul。
许可证
MIT许可证(MIT)。请参阅许可证文件以获取更多信息。