阅读(3763)
赞(11)
Laravel 8 自定义密码验证
2021-07-09 12:59:40 更新
当使用密码进行验证时,Passport 将使用模型中 password
属性值验证给定的密码。如果你的模型没有 password
属性或者你希望自定义密码验证的逻辑,你可以在模型中定义一个 validateForPassportPasswordGrant
方法来实现:
<?php
namespace App\Models;
use Illuminate\Foundation\Auth\User as Authenticatable;
use Illuminate\Notifications\Notifiable;
use Illuminate\Support\Facades\Hash;
use Laravel\Passport\HasApiTokens;
class User extends Authenticatable
{
use HasApiTokens, Notifiable;
/**
* 通过Passport的密码授权验证用户使用的密码
*
* @param string $password
* @return bool
*/
public function validateForPassportPasswordGrant($password)
{
return Hash::check($password, $this->password);
}
}