Yii2 yii2mod / yii2-rbac - PullRequest
       12

Yii2 yii2mod / yii2-rbac

0 голосов
/ 28 декабря 2018

Я пытаюсь понять, как это работает - никоим образом я не могу видеть только маршруты, начинающиеся с / rbac / .. и некоторые с / gridview / ... и / dynagrid / ... Но ни один маршрут не связан с моими действиями контроллераЯ думал, что yii2mod / yii2-rbac работает как RBAC в Yii1, где у меня были определены разрешения и проверены в контроллере.

Когда - как и прежде - я вставляю что-то вроде этого:

INSERT INTO `auth_item` (`name`, `type`, `description`, `rule_name`, `data`) VALUES ('createCompany', 0, 'createCompany', NULL, 'N;');

и назначаю его пользователю Admin, он отображается как разрешение, а не как маршрут в представлении разрешений Admin (rbac /missions / view / Admin)

Файл readme мне не помог - так как я могу использовать yii2mod / yii2-rbac?

1 Ответ

0 голосов
/ 10 января 2019

Пакет yii2mod / yii2-rbac , предоставляемый , представляет собой веб-интерфейс , но он не является альтернативойСобственная реализация RBAC в Yii2:

Yii2-RBAC предоставляет веб-интерфейс для расширенного контроля доступа и включает в себя следующие функции:

  • Позволяет операции CRUD для ролей, разрешений,rules
  • Позволяет назначать пользователю несколько ролей или разрешений
  • Позволяет создавать миграции консоли
  • Интегрировано с yii2mod / base

Основой этого пакета является RBAC Yii2, который может просмотреть часть своей реализации здесь (только в качестве примера).

Создание необработанного INSERT длятаблица auth_item не имеет большого смысла как способ понять, как работает RBAC.В таблице auth_item хранятся записи разрешений и / или ролей, которые разделены по типам: 1 = Роль, 2 = разрешение.

Установлено и настроено yii2mod / yii2-rbac вВ вашем проекте вы можете ввести различные параметры для создания ролей, разрешений, маршрутов и назначать их своим пользователям по мере их сканирования:

http://localhost/path/to/index.php?r=rbac/
http://localhost/path/to/index.php?r=rbac/route
http://localhost/path/to/index.php?r=rbac/permission
http://localhost/path/to/index.php?r=rbac/role
http://localhost/path/to/index.php?r=rbac/assignment

или, если вы включили красивые URL-адреса, вы можете использовать следующий URL-адрес:

http://localhost/path/to/index.php/rbac
http://localhost/path/to/index.php/rbac/route
http://localhost/path/to/index.php/rbac/permission
http://localhost/path/to/index.php/rbac/role
http://localhost/path/to/index.php/rbac/assignment

Если вы хотите лучше понять, как работает RBAC YB2, вы можете просмотреть его с здесь .

...