AuthShield v0.0.2 API Reference

Modules

AuthShield is an simple implementation that was created to be used with other frameworks (as Phoenix) or applications in order to provide an simple authentication and authorization management to the services.

Implements a set of functions to deal with authentication requests.

Helper plug for authenticated sessions.

User authenticated session.

Session is a temporary authentication information that is stored on server in order to keep the user logged in.

Implements a set of functions to deal with authorization requests.

Credentials are means to proof that an identity is valid in authentications.

AuthShield Credentials behaviour.

A personal identification number (PIN), or sometimes redundantly a PIN number, is a numeric or alpha-numeric password used in the process of authenticating a user accessing a system.

A password is an set of characters that only the user should known.

PIN (Personal Identification Number) schema model.

TOTP (Time-based One Time Password) shema model.

Time-based One-Time Password (TOTP) is an extension of the HMAC-based One-time Password algorithm (HOTP) generating a one-time password by instead taking uniqueness from the current time.

Resources can be used to definy many things but in authorization and authentication we use it as a form to declare something we need in order to deal with identities and access control.

AuthShield Resources behaviour.

Permissions are used to define what a set of roles can do in the system.

Roles are used to define an group of permissions that the user has. It usually works as an definition of the person function in the company.

Defines all permissions that an role can have.

Defines all roles that an user can have.

Defines the association between roles and permissions.

Defines all the user fields and its relations.

Defines the association between users and roles.

Users are the base identity in our architecture. It is used to authenticate an profile or to authorize an action given its set of roles.