我为用户和后端用户提供了2个表 - 一个用于前端用户(常规用户/客户),另一个用于后端用户(管理员)。请注意,这两个表有不同的结构,不要告诉我将它们组合起来并使用一个表。
我有两个解决方案:
我的问题是实现这个的最佳方法是什么?你有更好的解决方案吗?
我想要数字1的想法,因为它将后端用户的身份验证分开,并且它也会分离会话。
答案 0 :(得分:0)
我正在使用这样的auth基础架构,客户端和管理员需要使用相同的身份验证表单进行登录。客户和管理员都有各自的表格。这里的诀窍是:
扩展Auth服务提供商,以实现基于角色验证凭据的方式:
// returns an user or admin based on a role and id
retrieveById($identifier);
// returns an user or admin based on a role and its credentials
retrieveByCredentials(array $credentials)
// returns an user or admin based on a role and its token
retrieveByToken($identifier, $token)
// validate the credentials agains the table data based in a role
validateCredentials(Authenticatable $user, array $credentials)
另一种方法(丑陋的选项)是,如果要避免创建连接表,则创建新表单的输入,其中用户选择使用哪个角色来验证其凭据。
答案 1 :(得分:0)
我找到了解决这个问题的软件包。我使用了https://github.com/Kbwebs/MultiAuth。