Laravel 角色和权限包
Posted
技术标签:
【中文标题】Laravel 角色和权限包【英文标题】:Laravel Roles and Permissions Packages 【发布时间】:2019-04-27 19:08:35 【问题描述】:我想创建如下角色和权限:
每个post
都有很多users
。
类型 A 用户可以执行所有操作(创建、编辑、更新和删除) 发帖。
B 类用户只能创建、编辑和更新帖子。
C 类用户只能编辑和更新帖子。
这是否适用于 santigarcor/laratrust
或 spatie/laravel-permission
软件包?那些包看起来很复杂。
【问题讨论】:
试试 laravel 委托 我通常使用 laravel-permission by spatie。但似乎在这种情况下它不会帮助你。如果您担心这些软件包,您可以使用策略 (laravel.com/docs/5.7/authorization#creating-policies)。它们非常适合您的需求,并且不需要安装软件包。 你可以在这里看到具有角色和权限的自动化门laravel-news.com/authorization-gates 这是否适用于 Laratrust 或 spatie/laravel-permission?包看起来很复杂。 这是什么意思?它复杂的主题和 spatie 的包在抽象它方面做得很好。 @Kyslik 因为它们很复杂所以我想知道是否有其他方法可以实现。 【参考方案1】:如果您正在寻找基本的授权功能,laravel 的默认 gates and policies(如 cmets 中所述)可以解决问题。
如果正在寻找与page roles in Facebook pages 类似的功能,其中您有不同的组,每个组都有自己的帖子,并且用户在不同的组中具有不同的权限,那么请查看laratrust 中的团队功能包裹。
【讨论】:
以上是关于Laravel 角色和权限包的主要内容,如果未能解决你的问题,请参考以下文章
Laravel——用户角色权限控制包 Laravel-permission
我如何在 laravel 中为 spatie 包(ACL 管理)中的其他角色分配用户列表权限?