管理员在Laravel 5.8中以用户身份登录



我正在进行Laravel 5.8项目。我想做一个身份验证系统,管理员可以作为用户登录。我有单独的表用于身份验证;一个用于管理员,第二个用于普通用户。

用户登录使用默认的Laravel身份验证,对于管理员,有一个自定义的登录代码。

Auth::guard('admin')->attempt([
'name' => $request->name,
'password' => $request->password
], $request->remember);

例如:

我有3个用户:user1
user2user3

以及一个用户名为"的管理员用户;管理员">

管理员可以查看网站上的用户列表。在那一页上,有一个按钮,上面写着";以…身份登录";。因此,当管理员单击该按钮时,管理员可以作为该用户登录。这意味着管理员可以做用户可以做的事情。但所有的工作都将以管理员的身份完成。

简而言之:如果管理员想以前面的任何用户身份登录并执行他的任务,管理员将以该用户身份登录。同时,管理员希望以User1的身份登录到前端,但管理员端的管理员将以管理员的身份登录。

试试这个。您可以添加2个表列,也许其中一个名为";角色;具有枚举值,例如ADMIN、CUSTOMER和另一个名为"的枚举值;is_normal_user"使用布尔类型值,可以将其设置为true或false。因此,当您尝试以管理员身份登录并执行管理功能时,请通过检查他们的角色是admin还是CUSTOMER来使用该角色,然后当您尝试登录并以管理员身份执行客户功能时,使用;is_normal_user"领域

最新更新