RBAC module - Module for the Yii2 framework, which provides management with the next data:
- Roles
- Permissions
- Assign roles for users(profiles)
- php >= 7.1
- composer
- MySql >= 5.5
Via composer:
composer require itstructure/yii2-rbac-module "~3.0.5"
In application composer.json
file set the repository, like in example:
"repositories": [
{
"type": "path",
"url": "../yii2-rbac-module",
"options": {
"symlink": true
}
}
],
Here,
yii2-rbac-module - directory name, which has the same directory level like application and contains yii2 rbac module.
Then run command:
composer require itstructure/yii2-rbac-module:dev-master --prefer-source
In accordance with the documentation for Yii2, set authManager for application:
'components' => [
'authManager' => [
'class' => 'yii\rbac\DbManager',
],
// ...
],
In accordance with the documentation for Yii2, run command:
yii migrate --migrationPath=@yii/rbac/migrations
-
The name of module:
rbac
-
The namespace for used classes:
Itstructure\RbacModule
. -
The alias to access in to module root directory:
@rbac
. -
There is not a layout ! It's taken from application layout main by default or how it is configured. You cat set
layout
attribute in module by custom. -
View component is taken by default from the framework like yii\web\View. You cat set view component in module by custom.
Base application config must be like in example below:
use Itstructure\RbacModule\Module;
use Itstructure\RbacModule\controllers\{RoleController, PermissionController, ProfileController};
'modules' => [
'rbac' => [
'class' => Module::class,
'controllerMap' => [
'roles' => RoleController::class,
'permissions' => PermissionController::class,
'profiles' => ProfileController::class,
],
],
],
You can set the following attributes in a module config:
loginUrl
- set url to be redirected if you are not authorized.accessRoles
- The roles of users who are allowed access to work with this package.urlPrefix
- Url prefix for redirect and view links (Default is empty).urlPrefixNeighbor
- Url prefix for redirect and view links of neighbor entity (Default is empty).
Copyright © 2018-2023 Andrey Girnik girnikandrey@gmail.com.
Licensed under the MIT license. See LICENSE.txt for details.