Clone
1
flexi auth | User Authentication Library
haseydesign edited this page 2012-09-14 23:02:14 -07:00
This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

flexi auth is a free user authentication (User login) library for use with the CodeIgniter 2.0+ framework

The flexi auth library initially started out as a modified version of the popular Ion Auth library. As the original library was tweaked with feature after feature being added, the original code base had transformed into a new library all of its own.


To give you a clear example of the features available with flexi auth, there is a complete working online demo that is also available to download with the library.
Demo: http://haseydesign.com/flexi-auth/

To then get you started with using flexi auth, there is a detailed user guide detailing every function available with the library.
User Guide: http://haseydesign.com/flexi-auth/user_guide/

For any support queries, please post your questions to the flexi auth libraries CodeIgniter forum thread.
Support: http://codeigniter.com/forums/viewthread/224351/

The flexi auth library is available to download from its Github repo.
Download: https://github.com/haseydesign/flexi-auth


The Feature List

Core Functions

  • User registration, with options to send an activation email, auto activate or suspend an account pending review by an admin.
  • Login function including a Remember me option.
  • Logout function, with the option to log a user out of all computers they are logged into, or just the current computer.
  • User permission validation functions to check a users user group, privileges and login status.
  • Functions to reset forgotten passwords.
  • Functions to validate a users change of email address.
  • Password validation helper functions.
  • Many functions for obtaining user data stored within the database.
  • Admin CRUD functions to manage records within the libraries database tables.

Security

  • Passwords are hashed using the popular PHPASS library.
  • Login sessions are managed via a hashed session token technique as described by Barry Jaspan.
  • The session tokens mentioned above are further secured using CIs encryption library.
  • Users making multiple failed login attempts can be set to have any further login attempts throttled by preventing them from making any further attempts for a short definable time period.
  • Googles reCAPTCHA or a custom math based question and answer CAPTCHA can be deployed to login and registration forms.

Miscellaneous

  • The library includes fully customisable email templates for account activation, forgotten password, new password and validate updated email.
  • Multilingual and customisable status and error messages.

Highly Customisable

  • A highly configurable config file allows you to customise how features within the library behave, ranging from password validation to login session expiry settings.
  • All database tables and column names are renamable via just one config file setting to match whatever name coding convention you prefer.
  • The library consists of only 5 tables to provide every feature within flexi auth.
  • Unlimited additional custom tables can be added and related to the core library tables, allowing you to capture whatever data you require.
  • The 5 core library tables can be modified with the addition of new columns that can then be managed via library functions.