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',
相关推荐
niucloud-admin5 小时前
PHP V6 单商户常见问题——汇付支付提示暂未开通延时入账权限问题
php
荣月灵的小梅花10 小时前
在Android 9上修改build.fingerprint
android
帅次11 小时前
Compose 入门:@Composable、组合与重组
android·kotlin·gradle·android jetpack·compose·composable
洞见前行11 小时前
APK Signing Block V2 多渠道分包技术原理
android
DandelionR11 小时前
Android SDK安装
android
雪铃儿12 小时前
Flutter Android 热更新:我为什么没用 Shorebird 而是自己造了一个🚀
android·开源
angerdream12 小时前
Android手把手编写儿童手机远程监控App之通知栏消息
android
OCN_Yang13 小时前
能告诉我:你为什么用 MVI 吗?反正我不理解!
android·架构·前端框架
启山智软14 小时前
【 商城系统源码:Java与PHP的区别】
java·开发语言·php
源图客14 小时前
PHP开发环境搭建
开发语言·php