elzix / yii2-auth
Yii 2 User Authentication & Role Based Access Control (RBAC) Module
Installs: 11
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 0
Forks: 37
Type:yii2-extension
Requires
- php: >=8.1.0
- yiisoft/yii2: *
- yiisoft/yii2-bootstrap5: *
- yiisoft/yii2-composer: *
- yiisoft/yii2-swiftmailer: *
This package is auto-updated.
Last update: 2024-12-17 12:21:21 UTC
README
Auth Module is a flexible user registration, authentication & RBAC module for Yii2. It provides user authentication, registration and RBAC support to your Yii2 site.
Tribute
This project is forked from robregonm/yii2-auth. The basic functionality is the same, but some modifications have been made to make it compatible with Yii2 v2.0.49.3.
Installation
The preferred way to install this extension is through composer.
Either run
$ php composer.phar require elzix/yii2-auth:dev-master
or add
"elzix/yii2-auth": "dev-master"
to the require section of your composer.json
file.
Usage
Once the extension is installed, modify your application configuration to include:
return [ 'modules' => [ ... 'auth' => [ 'class' => 'auth\Module', // Custom layouts // Alternative: @common/views/layouts/main 'layout' => '//homepage', // Layout when not logged in yet 'layoutLogged' => '//main', // Layout for logged in users // Custom views (optional) // 'loginTemplate' => '', // 'signupTemplate' => '', // 'requestTemplate' => '', // 'resetTemplate' => '', // 'profileTemplate' => '', // 'profileUpdateTemplate' => '', // 'userTemplate' => '', // 'userViewTemplate' => '', // 'userCreateTemplate' => '', // 'userUpdateTemplate' => '', 'attemptsBeforeCaptcha' => 3, // Optional 'supportEmail' => 'support@mydomain.com', // Email for notifications 'passwordResetTokenExpire' => 3600, // Seconds for token expiration 'superAdmins' => ['admin'], // SuperAdmin users 'signupWithEmailOnly' => false, // false = signup with username + email, true = only email signup 'db' => 'db', // Optional, database to use 'tableMap' => [ // Optional, but if defined, all must be declared 'User' => 'user', 'UserStatus' => 'user_status', 'ProfileFieldValue' => 'profile_field_value', 'ProfileField' => 'profile_field', 'ProfileFieldType' => 'profile_field_type', ], /** * Custom redirects (optional) * * true = Go Home * false = Go Back * string = Redirect to link */ // 'loginRedirect' => '', // After login // 'passwordRedirect' => '', // After password reset or request // 'signupRedirect' => '', // After signup ], ... ], ... 'components' => [ ... 'authManager' => [ 'class' => '\yii\rbac\DbManager', 'ruleTable' => 'AuthRule', // Optional 'itemTable' => 'AuthItem', // Optional 'itemChildTable' => 'AuthItemChild', // Optional 'assignmentTable' => 'AuthAssignment', // Optional ], 'user' => [ 'class' => 'auth\components\User', 'identityClass' => 'auth\models\User', // or replace to your custom identityClass 'enableAutoLogin' => true, ], ... ] ];
And run migrations:
$ php yii migrate/up --migrationPath=@auth/migrations
License
Auth module is released under the BSD-3 License. See the bundled LICENSE.md
for details.
#INSTALLATION
./yii migrate/up --migrationPath=@auth/migrations
URLs
- Login:
yourhost/auth/default/login
- Logout:
yourhost/auth/default/logout
- Sign-up:
yourhost/auth/default/signup
- Reset Password:
yourhost/auth/default/reset-password
- User management:
yourhost/auth/user/index
- User profile:
yourhost/auth/profile/view