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',
相关推荐
CYRUS_STUDIO3 小时前
Frida 源码编译全流程:自己动手编译 frida-server
android·逆向
冬奇Lab4 小时前
音视频同步与渲染:PTS、VSYNC 与 SurfaceFlinger 的协作之道
android·音视频开发
北漂Zachary4 小时前
Laravel 8.x 核心特性全解析
php·laravel
北漂Zachary5 小时前
Laravel 5.x升级亮点:从架构优化到API革新
架构·php·laravel
以神为界7 小时前
Web后端入门:PHP核心基础全解析(含安全要点)
网络·安全·web安全·php·web
Grackers8 小时前
Android Perfetto 系列 9:CPU 信息解读
android
xixixi777778 小时前
AI自主挖洞 + 通信网络扩散:全域风险指数级放大,如何构建密码-沙箱-终端联动闭环?
开发语言·网络·人工智能·ai·大模型·php·通信
aq55356009 小时前
Laravel 6.x 核心特性深度解析
php·laravel
零陵上将军_xdr9 小时前
MySQL 事务写入流程详解
android·数据库·mysql
菜鸟国国9 小时前
Jetpack Compose 副作用完全解析(初学者必看,超详细)
android