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',
相关推荐
山东布谷网络科技4 分钟前
对标Yalla和Chamet:海外直播语聊APP中多人派对房的关键技术细节
java·开发语言·人工智能·php·语音识别·软件需求·海外电商系统开发
Sinowintop7 分钟前
易连EDI-EasyLink之WebEDI功能解读
服务器·microsoft·php·edi·国产edi软件·webedi
2501_937145411 小时前
IPTV电视源码系统2026优化版:技术升级,全场景流畅适配
android·电视盒子·源代码管理
Ehtan_Zheng2 小时前
让你的代码更整洁:10 个必知的 Kotlin 扩展函数
android
城东米粉儿2 小时前
Android VSync 笔记
android
城东米粉儿2 小时前
Android SurfaceFlinger 笔记
android
似霰2 小时前
Android 日志系统5——logd 写日志过程分析二
android·log
hewence12 小时前
Kotlin CoroutineContext 详解
android·开发语言·kotlin
Albert Edison3 小时前
【Python】文件
android·服务器·python