如何在Laravel 5中丰富/扩展Auth类/数据?

时间:2017-04-11 13:31:13

标签: laravel authentication

在Laravel中,在身份验证后访问Auth Facade非常有用,以获取以下用户数据:

Auth::user()

如果在会话和用户交互期间我想要丰富上述调用返回的对象?也许在他对我的webapp执行某些操作后为用户分配了一些属性?

E.g。用户执行快速注册,并在完成一些其他配置文件数据之后。我希望它们可以直接在Auth :: user()中使用,而不是执行后续的DB查询......

重要 我正在将Auth0集成到Laravel身份验证中。因此,Auth背后的默认驱动程序/提供程序不是Eloquent而是Auth0。

Auth0返回一个包含所有经过身份验证的数据的Json对象。

Auth0User->userInfo

我想要实现的是通过向会话对象添加自定义数据来编辑Auth0身份验证后的身份验证数据。

基本上我想使用其他服务来管理帐户相关数据,并仅使用Auth0管理用户/密码授予。

1 个答案:

答案 0 :(得分:0)

您可以向User模型添加自定义属性。例如:

public function getTestAttribute()
{
    return session()->get('test', 'defaultValue');
}

可以在应用程序的其他位置设置会话密钥:

session()->put('test', 'otherValue');