我在Laravel中使用Passport进行身份验证和spatie / laravel-permission设置API以添加权限功能。我还有一个调用应用程序,再次用Laravel编写。我可以从调用应用程序到api进行身份验证,但我如何确保调用应用程序知道可用的权限?用户/角色/权限表在api和调用应用程序中应该是什么样的? 基本上我想在两个应用程序中使用如下代码:$ user-> can('做某事')。
答案 0 :(得分:0)
我对spatie包的理解是它允许你进行这样的代码调用" $ user->可以('做某事')",并且阅读github页面看起来它创建了默认名为" role"和#34;许可"安装程序包后运行迁移时。换句话说,这是在两个应用程序中正确配置模型和数据库连接的问题,特别是两个应用程序的用户模型和权限表。
此外,我认为您要问两件事,但是,如果我不理解您的问题,请完全纠正我!目标是帮助而不是回答:))
问题1第二个应用程序如何知道可用的权限,
问题2你如何能够使用" $ user->这样的东西('做某事')"在两个应用程序中,触摸完全相同的数据。
此外,对于它的价值,我还没有使用过spatie / laravel-permission软件包,但就问题#1而言,我确实在文档中找到了一个也可能用于从"权限表"
中获取列表形式的当前权限Permission Model, getPermissions
作为参考,关于Laravel的Eloquent和Models(可能是你已经知道的东西,但无论如何我都会留下这个链接):