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',
相关推荐
pangares1 小时前
防火墙安全策略(基本配置)
服务器·php·apache
simplepeng2 小时前
Room 3.0 KMP Alpha-01
android·kotlin·android jetpack
Lei活在当下2 小时前
Windows 下 Codex 高效工作流最佳实践
android·openai·ai编程
fatiaozhang95272 小时前
基于slimBOXtv 9.19.0 v4(通刷晶晨S905L3A/L3AB芯片)ATV-安卓9-完美版线刷固件包
android·电视盒子·刷机固件·机顶盒刷机·晶晨s905l3ab·晶晨s905l3a
私房菜3 小时前
Selinux 及在Android 的使用详解
android·selinux·sepolicy
一只特立独行的Yang3 小时前
Android中的系统级共享库
android
两个人的幸福online4 小时前
php开发者 需要 协程吗
android·开发语言·php
修炼者5 小时前
WindowManager(WMS)构建全局悬浮窗
android
xiaoshiquan12066 小时前
Android Studio里,SDK Manager显示不全问题
android·ide·android studio
Lstone73646 小时前
Bitmap深入分析(一)
android