Phauxth v0.8.1 Phauxth
A collection of functions to be used to authenticate Phoenix web apps.
Phauxth is designed to be secure, extensible and well-documented.
The following functionality is provided by Phauxth (see the
Customizing Phauxth
section below for more information about
extending this functionality).
Authentication
Phauxth.Authenticate
- authenticate the user, using Plug sessions or Phoenix tokens
- set the current_user value
Phauxth.Remember
- authenticates the user using a remember_me cookie
Login
Phauxth.Login
- login using a password
- this uses Comeonin.Bcrypt by default, but a custom hash function can be used
Phauxth.Otp
- login using a one-time password
Email / phone confirmation and password resetting
Phauxth.Confirm
- user confirmation
Phauxth.Confirm.PassReset
- password resetting using email / phone confirmation
Helper functions
There are also helper functions provided to add and delete the remember_me cookie, and to add a password hash to the database.
Getting started with Phauxth
The easiest way to get started is to use the phauxth_new installer. First, download and install it:
mix archive.install https://github.com/riverrun/phauxth/raw/master/installer/archives/phauxth_new.ez
Then run the mix phauxth.new
command in the main directory
of the Phoenix app. The following options are available:
--api
- create files for an api--confirm
- add files for email confirmation
Customizing Phauxth
See the documentation for Phauxth.Authenticate.Base, Phauxth.Login.Base and Phauxth.Confirm.Base for more information on extending these modules.
You can find more information at the Phauxth wiki.