looplinguist/secure-password-policy

该工具用于防止在Laravel中重复使用之前使用的密码。

v1.0.1 2024-06-11 15:43 UTC

This package is auto-updated.

Last update: 2024-09-13 14:34:42 UTC


README

该工具用于防止在Laravel中重复使用之前使用的密码。

安装

使用 Composer 安装

composer require looplinguist/secure-password-policy

用户模型

更新用户模型以与密码历史表建立关系。您可以将以下代码添加到用户模型中

use Illuminate\Database\Eloquent\Relations\HasMany;
use LoopLinguist\SecurePasswordPolicy\Models\PasswordHistory;

class User extends Authenticatable
{
    //  ... 

    public function passwordHistories(): HasMany
    {
        return $this->hasMany(PasswordHistory::class);
    }
}

方法

将以下代码添加到处理密码更改的方法中

use LoopLinguist\SecurePasswordPolicy\Http\HasPasswordHistory;

 if ((new HasPasswordHistory($request->input('password')))->hasHistory()) {
            return response()->json([
                'message' => 'Password found.'
            ], 409);
        }

使用以下命令发布配置文件

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

以下是将在config/secure-password-policy.php中发布的文件内容

使用以下命令发布迁移

php artisan vendor:publish --tag=secure-password-policy-migrations    
php artisan migrate