2015-11-22 08:17:55 18364次浏览 4条回答 0 悬赏 50 金钱

我大概已经知道角色权限管理的过程:
1、添加权限;
2、添加角色并分配权限;
3、给用户分配角色(和权限);
4、验证用户是否有权限。

但是,如何区分角色等级?

例如有三个角色,管理员(具有所有权),编辑(可以对文章等进行增删改查)、会员(仅能查看):
管理员具有所有权,无容置疑;
编辑可以对网站进行大部分操作,但无法对角色和用户是管理员或编辑进行操作,无法对管理员添加的文章进行审核等操作,也无法对其他编辑添加的文章进行审核等操作。但可以添加不高于自身权限的角色和用户,并对不高于自身权限的用户添加的文章进行审核和删除等操作。
会员仅能查看文章等,对自己的个人信息进行修改,但无法修改角色,也无法创建角色和权限。

这种要求应该如何才能实现?????

  • 回答于 2015-11-22 09:55 举报

    还有两个概念:规则、默认角色。

    你的三种角色(管理员、编辑、会员)可分为三个组,使用默认角色可以解决。如果编辑还有不同分工,则创建不同的角色(非默认角色)分配给用户。

    3 条回复
    回复于 2015-11-22 17:29 回复

    能否具体的说说???

    回复于 2015-11-22 22:13 回复

    YiiChian社区的文档授权中关于基于角色的存取控制 (RBAC)部分讲得很清楚了。

    回复于 2016-11-10 09:39 回复

    https://github.com/zero-mmx/mrbac 这个权限管理好用 ,配置就使用了。

  • 回答于 2015-11-23 11:15 举报

    你需要分几个组,自定义各组的权限,然后把用户放到对应的组里,仅此而已。

  • 回答于 2015-11-24 12:44 举报

    RBAC三篇教程,教你精通rbac!!点击 Yii中文网 全站搜索RBAC

  • 回答于 2016-11-10 09:43 举报

    可以试试 :https://github.com/zero-mmx/mrbac 这个权限管理,配置就使用,无需写额外代码。 有IP管理,debug配置。权限总是可见配置

    3 条回复
    回复于 2016-11-12 12:19 回复

    报错“Call to a member function allowIps() on null”,这是怎么回事啊?没找到原因

    回复于 2017-05-24 09:32 回复

    这个可以配置allowIps(允许ip访问controller), 我反馈开发者下,让他加个判断。

    回复于 2017-05-24 09:49 回复

    'mrbac' => [

        'class' => 'mrbac\MrbacModule',
        //'layout' => '@path/to/your/layout', // if you  want to change layout | 如果你想改变权限管理的界面ui的话,可以指定布局
        'idField' => 'id',        // id field of your User model that corresponds to Yii::$app->user->id
        'usernameField' => 'username', // username field of your User model | 用户名
        'userClassName' => 'path\models\User', |  指定的用户 ActiveRecord类 Model
        'searchClass' => 'path\models\UserSearch',    // fully qualified class name of your User model for searching
        'debug' => true,
        'allowedIPs'=>array('*'),
        'alwaysAllows' => [
            '/home/index',
            '/home/home',
            '/home/logout',
            '/home/login'
        ],  这边有个配置 allowIps
    
您需要登录后才可以回答。登录 | 立即注册
墨轩娣
董事长

墨轩娣 无锡

注册时间:2015-03-25
最后登录:7小时前
在线时长:274小时58分
  • 粉丝38
  • 金钱59765
  • 威望150
  • 积分64005

热门问题