laravel 自定义密码验证方式

继承 EloquentUserProvider

php 复制代码
<?php
 
 
namespace App\Providers;
 
 
use Illuminate\Auth\EloquentUserProvider;
use Illuminate\Contracts\Auth\ Authenticatable as UserContract;
 
class ApiEloquentUserProvider extends EloquentUserProvider
{
    public function validateCredentials( UserContract $user, array $credentials)
    {
 
        //这里写自己的验证规则
        $password = $user->system_encrypt($credentials['password'],$user['salt']);
        return $password == $user->getAuthPassword();
    }
}

修改App\Providers\AuthServiceProvider

php 复制代码
public function boot()
{
        $this->registerPolicies();
 
        Auth::provider('api-eloquent', function ( $app, array $config) {
            return new \App\Providers\ApiEloquentUserProvider( $app[ 'hash'], $config[ 'model']);
        });
}

然后就可以在config/auth.php里直接使用了

linux 复制代码
'driver' => 'api-eloquent',
相关推荐
汉堡包00117 分钟前
【网安基础】--内网代理转发基本流程(正向与反向代理)
安全·web安全·php
STCNXPARM23 分钟前
Linux camera之V4L2子系统详解
android·linux·camera·v4l2架构
2501_944525541 小时前
Flutter for OpenHarmony 个人理财管理App实战 - 账户详情页面
android·java·开发语言·前端·javascript·flutter
梁辰兴3 小时前
计算机网络基础:TCP 的拥塞控制
tcp/ip·计算机网络·php·tcp·拥塞控制·计算机网络基础·梁辰兴
不急不躁1234 小时前
Android16 GTS GtsPermissionTestcases 测试,跳过权限检查
android
符哥20086 小时前
关于用Android Compose开发成不成熟的分析
android·android jetpack
蜗牛、Z6 小时前
Android 蓝牙/Wi-Fi通信协议之:蓝牙扫描ScanCallback详解
android
黄昏晓x6 小时前
Linux----进程控制
android·linux·运维
我是阿亮啊6 小时前
android中事件分发机制
android·事件分发·事件分发机制
心前阳光7 小时前
Unity 模拟父子关系
android·unity·游戏引擎