coolcsn / CsnUser

Authentication module using Doctrine
MIT License
33 stars 36 forks source link

CsnUser

Zend Framework 2 Module

What is CsnUser?

CsnUser is a Module for Authentication based on DoctrineORMModule

What exactly does CsnUser do?

CsnUser has been created with educational purposes to demonstrate how Authentication can be done. It is fully functional.

CsnUser module consists of:

In addition, passwords are encrypted using Bcrypt algorithm.

What's the use again?

An alternative to ZfcUser with more functionality added.

Installation

  1. Installation via composer is supported, simply run: php composer.phar require coolcsn/csn-user:dev-master. The installed module is located in ./vendor/coolcsn/csn-user.

  2. Create Doctrine Proxy cache directory in APP_ROOT/data/DoctrineORMModule/Proxy. Be shure to grant write permissions.

  3. Add CsnUser, DoctrineModule and DoctrineORMModule in your application configuration at: ./config/application.config.php. An example configuration may look like the following :

'modules' => array(
    'Application',
    'DoctrineModule',
    'DoctrineORMModule',
    'CsnUser'
)

Configuration

CsnUser requires setting up a Connection for Doctrine, a simple Mail configuration and importing a database schema.

  1. Create a new database (or use an existing one, dedicated to your application).

  2. Copy the sample Doctrine configuration from ./vendor/coolcsn/csn-user/config/doctrineorm.local.php.dist to ./config/autoload renaming it to doctrineorm.local.php. Edit the file, replacing the values (username, password, etc) with your personal database parameters.

  3. Run ./vendor/bin/doctrine-module orm:schema-tool:create to generate the database schema. Import the sample SQL data (for some default data) located in ./vendor/coolcsn/CsnUser/data/SampleData.sql. You can easily do that with PhpMyAdmin for instance.

  4. Copy the sample Mail configuration from ./vendor/coolcsn/csn-user/config/mail.config.local.php.dist to ./config/autoload renaming it to mail.config.local.php. Edit the file, replacing the values (host, username, etc) with your SMTP server parameters.

  5. Append the contents of ./vendor/coolcsn/CsnUser/data/CsnUser.css to APP_ROOT/public/css/styles.css or include CsnUser.css into your app.

Options

The CsnUser module has some options to allow you to quickly customize the basic functionality. After installing CsnUser, copy ./vendor/coolcsn/CsnUser/config/csnuser.global.php.dist to ./config/autoload, renaming it to csnuser.global.php and change the values as desired, following the instructions.

The following options are available:

It is ready?

Navigate to [hostname]/user in your browser to view different options for login, registration, forgotten password, etc.

Routes

The following routes are available:

Dependencies

This Module depends on the following Modules:

Recommends