首页 > 解决方案 > 如果用户在 laravel 中分配了多个角色,我如何使用单个角色登录?

问题描述

我有一个用例,用户具有多个角色,但想一次登录一个角色并赋予相应角色的权限。例如,用户具有员工、经理和财务经理角色,每个角色都有自己的权限/权限。所以,现在我希望系统在用户尝试登录系统时询问角色选择,并根据选择进行身份验证。

拉拉维尔 5.4

Zizaco/委托 1.3.x

TIA。

标签: laravellaravel-5acl

解决方案


您需要针对不同用户角色的多个保护功能。你可以在 config/auth.php 中编辑它

在登录期间,您可以使用下拉菜单。基于该输入,您可以在控制器中定义不同的防护。您的代码可能如下所示;

if (request('role')=='admin')
   if(Auth::guard('admin')->attempt($credentials)){
       // your code to login
   }

else if (request('role')=='user')
   if(Auth::guard('user')->attempt($credentials)){
       // your code to login
   }

有关身份验证的更多信息,您可以查看文档


推荐阅读