287640817/laravel-permission

为Laravel 5.4及更高版本提供权限处理

dev-master 2019-08-15 07:53 UTC

This package is auto-updated.

Last update: 2024-09-15 18:43:24 UTC


README

赞助商

Latest Version on Packagist Build Status StyleCI Total Downloads

此包允许您在数据库中管理用户权限和角色。

安装后,您可以进行如下操作

// Adding permissions to a user
$user->givePermissionTo('edit articles');

// Adding permissions via a role
$user->assignRole('writer');

$role->givePermissionTo('edit articles');

如果您使用多个守卫,我们也为您提供了支持。每个守卫都将有自己的权限和角色集合,可以分配给守卫的用户。请参阅README中的使用多个守卫部分。

因为所有权限都将注册在Laravel的gate上,您可以使用Laravel默认的can函数检查用户是否拥有权限

$user->can('edit articles');

文档

您可以在专门的文档站点找到安装说明和使用此包的详细说明。

需要UI吗?

该包不包含任何内置界面,您应该自己构建。以下是一些开始的选择

测试

composer test

变更日志

请参阅CHANGELOG以获取有关最近更改的更多信息。

贡献

请参阅CONTRIBUTING以获取详细信息。

安全性

如果您发现任何与安全相关的问题,请通过电子邮件freek@spatie.be而不是使用问题跟踪器。

明信片软件

您可以使用此包,但如果它进入您的生产环境,我们非常感谢您从您的家乡寄给我们一张明信片,并说明您正在使用我们的哪些包。

我们的地址是:Spatie,Samberstraat 69D,2060 安特卫普,比利时。

我们在我们的公司网站上发布所有收到的明信片

鸣谢

此包在很大程度上基于Jeffrey Way关于权限和角色的精彩课程。他的原始代码可以在GitHub上的此存储库中找到

特别感谢Alex Vanderbist对v2的巨大帮助,以及Chris Brown长期的支持,帮助我们维护此包。

替代方案

  • 在Laravel News的文章中,Povilas Korop对替代方案进行了出色的列举。[链接](https://twitter.com/@povilaskorop)。在该文章中,他还比较了laravel-permission和[Joseph Silber的Bouncer](https://github.com/JosephSilber),在我们的评价中这也是一个非常优秀的包。
  • ultraware/roles对功能采取了一种略有不同的方法。[链接](https://github.com/ultraware/roles)。

支持我们

Spatie是一家位于比利时安特卫普的网页设计公司。您可以在我们的网站上找到所有开源项目的概述。[链接](https://spatie.be/opensource)。

您的业务依赖于我们的贡献吗?请在[Patreon](https://www.patreon.com/spatie)上联系我们并支持我们。所有承诺都将用于分配人力资源以维护和新奇事物。

许可证

MIT许可证(MIT)。有关更多信息,请参阅[许可证文件](https://github.com/287640817/laravel-permission/blob/HEAD/LICENSE.md)。