1. Go to this page and download the library: Download carono/yii2-rbac library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
carono / yii2-rbac example snippets
'components' => [
'authManager' => [
// Настраиваем менеджер, чтобы можно было в консоли работать с правами
'class' => 'yii\rbac\DbManager',
'defaultRoles' => ['guest', 'user'],
],
],
'controllerMap' => [
'rbac' => [
'class' => 'carono\yii2rbac\RbacController',
'roles' => [
'guest' => null,
'user' => null,
'manager' => 'user',
'director' => ['parent' => 'manager', 'description' => 'Директор'], // Наследование директора от менеджера
'root' => null
],
'permissions' => [
'*:*:*' => ['root'], // Для рута доступны все контроллеры
'Basic:Site:*' => ['guest'], // Для гостя разрешены все actions у SiteController
'Basic:Director:*' => ['director'],
'updater_perm' => ['director'], // Простые доступы тоже можно создавать как обычно
'Basic:Manager:*' => ['manager'], // Будет доступно и директору, т.к. наследуется
'Basic:Director:Index' => ['manager'], // Только один action у DirectorController
'Ajax:*:*' => ['user'] // Модуль Ajax, все контроллеры разрешаем авторизованным
]
],
]
public function behaviors()
{
return [
'access' => [
'class' => RoleManagerFilter::className(),
]
];
}