- 1、本文档共5页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Entrust 权限管理.pdf
Entrust 权限管理
说明
Zizaco/Entrust 是 Laravel 下 ⽤户权限系统 的解决⽅案, 配合 ⽤户⾝份认证 扩展
包 Zizaco/confide 使⽤, 可以快速搭建出⼀ 具备⾼扩展性的⽤户系统.
Confide, Entrust和 Sentry
项⽬地址
https://github .com/Zizaco/entrust
⾸先两个概念分清楚:
⽤户⾝份认证 Authentication - 处理⽤户登录, 退出, 注册, 找回密码, 重置密
码, ⽤户邮箱认证 etc ..
权限管理 Authorization - 负责 ⽤户 与 权限, ⽤户组 三者之间的对应, 以及
管理.
下⾯是这⼏个 Package 的简单区别:
Sentry = ⽤户⾝份认证 + 权限管理;
Zizaco/Entrust = 权限管理;
Zizaco/confide = ⽤户⾝份认证;
⽤户⾝份认证 和 权限管理 分开来做有什么好处呢
分开的话可以更灵活, 有些项⽬因为特殊的业务逻辑, ⽆法使⽤ Confide的 ⽤户⾝份
认证, 但是却需要⽤到 权限管理, 如: PHPHub.
Laravel-blog 就是⼀个简单的应⽤, 使⽤了 Confide 做 ⽤户⾝份认证, Entrust 做 权
限管理, 可以作为参考.
安装
composer .j son
zizaco/entrust: 1.2.* dev
install
composer update
provider
修改 app/config/app.php ⽂件, 在 providers 数组⾥⾯添加:
Zizaco\Entrust\EntrustServiceProvider,
aliase
修改 app/config/app .php ⽂件, 在 aliases 数组⾥⾯添加:
Entrust = Zizaco\Entrust\EntrustFacade,
系统配置
Entrust 会利⽤ config/auth .php ⾥⾯的值, 去决定使⽤那个 Model 和 ⽤户表名.
⽣成 Migration
php artisan entrust:migration
会⽣成 timestamp_entrust_setup_tables.php Migration ⽂件, 检查没问题
php artisan migrate
* Models
创建 app/models/Role.php ⽂件, 内容为以下:
php
use Zizaco\Entrust\EntrustRole;
class Role extends EntrustRole
{
}
创建 app/models/Permission.php ⽂件, 内容为以下:
php
use Zizaco\Entrust\EntrustPermission;
class Permission extends EntrustPermission
{
}
修改 app/models/User.php ⽂件, 添加 HasRole trait:
php
use Zizaco\Entrust\HasRole;
class User extends Eloquent / or Conf ideUser wink /{
use HasRole; // Add this trait to your user model
...
最后, ⽣成⾃动加载:
composer dump-autoload
## 基础概念
三 主要数据对象, 以及他们之间的关系:
* User - ⽤户, ⼀ ⽤户可以属于多 ⽤户组, 不直接挂钩权限, 让⽤户组和权限绑
* Roles - ⽤户组, ⼀ ⽤户组可以拥有多 权限;
* Permission - 权限;
四 数据库表说明:
安装的第 6 步会产⽣⼀ Migration, 此⽂件定义了 4 张数据库表:
* roles - ⽤户组信息表;
* assigned_roles - ⽤户和⽤户组之间的对应关系;
* permissions - 权限信息表;
* permission_role - 权限和⽤户组之间的对应关系.
## 实例
接下来我们来创建
文档评论(0)