Разделение между модератором и менеджером

Всё про контроль доступа пользователей: фильтры, RBAC, проверки
Ответить
roswe47
Сообщения: 13
Зарегистрирован: 2017.08.31, 22:57

Разделение между модератором и менеджером

Сообщение roswe47 » 2019.10.25, 14:34

Доброго дня.
В таблице есть поле isAdmin по умолчанию всем пользователям ставится *0* что не позволяет зайти в админ ку при любом другом числе допуск открыт в панель, мне нужно сделать разделение между модератором и менеджером, чтоб он не мог зайти в опцию создать удалять статьи категории, но мог зайти через панель в свой кабинет.

Код: Выделить всё

public function behaviors()
    {
        return [
            'access'    =>  [
                'class' =>  AccessControl::className(),
                'denyCallback'  =>  function($rule, $action)
                {
                   throw new \yii\web\NotFoundHttpException();
                },
                'rules' =>  [
                    array(
                        'allow' =>  true,
                        'matchCallback' =>  function($rule, $action)
                        {

                            if(Yii::$app->user->isGuest) throw new \yii\web\NotFoundHttpException();

                            if(Yii::$app->user->isGuest)  exit(); return Yii::$app->user->identity->isAdmin;

                        }
                    )
                ]
            ]
        ];
    }
Как можно сделать что б при числе 2 например в isAdmin, у него допуск был открыт только к себе, ?
не пойму, где эти числа присваиваются, или как то иначе можно реализовать?

Аватара пользователя
samdark
Администратор
Сообщения: 9198
Зарегистрирован: 2009.04.02, 13:46
Откуда: Воронеж
Контактная информация:

Re: Разделение между модератором и менеджером

Сообщение samdark » 2019.10.25, 16:14

Система прав начинает усложняться. Посмотрите в сторону RBAC https://www.yiiframework.com/doc/guide/ ... rolej-rbac

Ответить