Openmaize

Authentication and authorization library for Elixir

Goals

Openmaize is an authentication and authorization library that aims to be:

It should work with any application that uses Plug, but it has only been tested with the Phoenix Web Framework.

Installation

  1. Add openmaize to your mix.exs dependencies
defp deps do
[ {:openmaize, "~> 0.10"} ]
end
  1. List :openmaize as an application dependency
def application do
[applications: [:logger, :openmaize]]
end
  1. Run mix do deps.get, compile

Use

Before you use Openmaize, you need to make sure that your user model contains an id, name (which identifies the user) and role.

You then need to configure Openmaize. For more information, see the documentation for the Openmaize.Config module.

Openmaize provides the following main plugs:

There are also plugs that can be used for authorization in the Openmaize.AccessControl module.

See the relevant module documentation for more details.

There is an example of Openmaize being used with Phoenix at Openmaize-phoenix.

License

BSD