我可以使用Laravel的护照登录方法来检查用户表中的有效字段吗?

时间:2018-08-21 13:05:22

标签: php laravel laravel-passport

我有一个Laravel项目,使用通行证通过/ outh / token路由对登录尝试进行身份验证。我还需要这种方法来检查用户表中名为“ validated”的字段是否设置为true。如果不是不允许他们登录并显示一条消息,说明“您的帐户尚未激活,请检查我们发送给您的电子邮件以激活您的帐户”。

执行此操作的唯一方法是创建自定义登录控制器吗?那么,这样做的安全性如何?除了检查用户名和密码并生成密码授予令牌之外,还有什么额外的护照可以做?

1 个答案:

答案 0 :(得分:1)

我个人将使用自定义中间件,而不是修改oauth路由。您可以简单地查询用户记录以检查它们是否已激活,如果没有,则将其重定向。

public function handle($request, Closure $next) {
    if (!auth()->user()->activated) { 
        return redirect('home');
    } 
    return $next($request);
}