vinothmallow/laravel-password-history-validation

防止用户重复使用最近使用过的密码

1.0 2022-11-27 00:06 UTC

This package is auto-updated.

Last update: 2024-09-27 04:02:12 UTC


README

Latest Version on Packagist Build Status Quality Score Total Downloads

防止用户重复使用最近使用过的密码。

安装

您可以通过composer安装此包

composer require vinothmallow/laravel-password-history-validation

配置

要开始使用,您需要发布配置文件,并迁移数据库

php artisan vendor:publish --tag=password-config

根据您的项目修改配置文件,然后迁移数据库

php artisan migrate

使用方法

此包将监视模型的创建和更新事件(检查配置文件以获取设置)并自动记录密码散列。

在您的表单请求或内联验证中,您只需实例化NotFromPasswordHistory类,并将当前用户作为参数传递即可

<?php
use VinothMallow\LaravelPasswordHistoryValidation\Rules\NotFromPasswordHistory;

$this->validate($request, [
            'password' => [
                'required',
                new NotFromPasswordHistory($request->user())
            ]
        ]);

清理旧记录 - (可选)

因为我们将在您的数据库中存储散列密码,所以当您有大量用户时,您的数据库可能会变得很长

将PasswordHistoryTrait添加到您的用户模型中

<?php
use VinothMallow\LaravelPasswordHistoryValidation\Traits\PasswordHistoryTrait;

class User extends Authenticatable
{
    use Notifiable, PasswordHistoryTrait;

}

然后您可以运行以下Artisan命令

php artisan password-history:clear

变更日志

有关最近更改的详细信息,请参阅CHANGELOG

贡献

有关详细信息,请参阅CONTRIBUTING

安全

如果您发现任何安全相关的问题,请通过电子邮件vinothmallow@live.com联系,而不是使用问题跟踪器。

如何感谢您?

为什么不给github仓库加星标?我很乐意得到关注!为什么不把此仓库的链接分享到Twitter或HackerNews?传播消息!

别忘了关注我的Twitter

谢谢!Edward Paul。

许可证

MIT许可证(MIT)。有关更多信息,请参阅许可证文件