No description, website, or topics provided.
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
accounts
assets/js
behaviors
commands
components
controllers
docs
events
exceptions
helpers
interfaces
migrations
models
tests
validators
views
.gitignore
.travis.yml
Module.php
README.md
codeception.dist.yml
composer.json
composer.lock

README.md

Yii2 User module Build Status

Just another user module management functionalities.

  • Optional self registration via front end
  • Lost password retrieval(optional)
  • User administration interface
  • Flexible access control
  • Console commnads(TODO)
  • Advanced user (optional)

Installation

  1. Download Yii2-user using composer

The preferred way to install this extension is through composer.

Either run

php composer.phar require --prefer-dist nkostadinov/yii2-user "*"

or add

"nkostadinov/yii2-user": "*"

to the require section of your composer.json file.

  1. Configure your application

Add following lines to your main configuration file:

'components' => [
    'user' => [
        'class' => 'nkostadinov\user\components\User',
    ],
],
'modules' => [
    'user' => [
        'class' => 'nkostadinov\user\Module',
    ],
],

Step 3: Update database schema

NOTE: Make sure that you have properly configured db application component.

After you downloaded and configured Yii2-user, the last thing you need to do is updating your database schema by applying the migrations:

$ php yii migrate/up --migrationPath=@vendor/nkostadinov/yii2-user/migrations

How to run tests

Install codeception globally:

$ composer global require "codeception/codeception=*" "codeception/specify=*" "codeception/verify=*"

Install globally the composer's asset plugin:

$ composer global require "fxp/composer-asset-plugin:~1.1.0"

Go to nkostadinov/yii2-user directory and run:

$ composer update

Build the codeception actors:

$ codecept build

Create a new database called 'user_test':

$ mysql -e 'create database user_test;'

Run the migrations:

$ php tests/_app/yii migrate --interactive=0

Advanced user

The yii2-user extension has the following additional functionalities that can be added on demand:

  • [Password aging] (docs/PASSWORD_AGING.md)
  • [Password history policy] (docs/PASSWORD_HISTORY_POLICY.md)
  • [Account locking policy] (docs/ACCOUNT_LOCKING_POLICY.md)
  • [First login policy] (docs/FIRST_LOGIN_POLICY.md)

Admin panel

You can find the admin panel on /user/admin/index route. In order to set proper permissions, change the access rules of the controller via the $adminRules property of the User component. Defaults to:

[
    [
        'allow' => true,
        'roles' => ['@']
    ]
]