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',
相关推荐
SEO_juper1 小时前
别再纠结LLMs.txt了!它背后的真相与最佳使用场景,一文讲透。
开发语言·ai·php·数字营销
p***c9492 小时前
PHP在电商中的电商系统
开发语言·php
阿星智力囊3 小时前
Thinkphp6+nginx环境报错信息不显示,接口直接报500和CORS跨域(错误的引导方向),真坑啊
运维·nginx·php·thinkphp6
e***87704 小时前
windows配置永久路由
android·前端·后端
Xudde.5 小时前
Quick2靶机渗透
笔记·学习·安全·web安全·php
fouryears_234175 小时前
现代 Android 后台应用读取剪贴板最佳实践
android·前端·flutter·dart
F***c3256 小时前
PHP在微服务中的分布式跟踪
分布式·微服务·php
YF02116 小时前
Frida for MacBook/Android 安装配置
android·前端
雨白7 小时前
Android实战:构建高可维护的日志系统
android
chxii8 小时前
PHP 配置全解析:Apache vs Nginx 的线程安全差异与 Windows 实战指南
运维·php