AuthManager (auth_manager_core v0.1.1)

AuthManager es una librería completa para gestión de usuarios, roles y permisos en aplicaciones Phoenix, con soporte para herencia de roles y permisos.

Proporciona:

  • Gestión de usuarios con datos personales
  • Sistema jerárquico de roles y permisos
  • Verificación y autorización mediante middleware
  • Herramientas utilitarias para varias operaciones comunes

Summary

Functions

assign_parent_permission(permission, parent_permission)

See AuthManager.Core.Controller.assign_parent_permission/2.

assign_parent_role(role, parent_role)

See AuthManager.Core.Controller.assign_parent_role/2.

assign_permission_to_role(role, permission)

See AuthManager.Core.Controller.assign_permission_to_role/2.

assign_permission_to_user(user, permission)

See AuthManager.Core.Controller.assign_permission_to_user/2.

assign_role_to_user(user, role)

See AuthManager.Core.Controller.assign_role_to_user/2.

can?(user, permission)

Verifica si un usuario tiene un permiso específico.

can_by?(opts)

Función unificada para verificar permisos o roles. Ejemplo:

AuthManager.can_by?(user: user, permission: "delete_users")
AuthManager.can_by?(user: user, role: "admin")
AuthManager.can_by?(role: "editor", permission: "edit_articles")

create_permission(attrs)

See AuthManager.Core.Controller.create_permission/1.

create_role(attrs)

See AuthManager.Core.Controller.create_role/1.

create_user(attrs)

See AuthManager.Core.Controller.create_user/1.

get_all_permissions()

See AuthManager.Core.Controller.get_all_permissions/0.

get_all_roles()

See AuthManager.Core.Controller.get_all_roles/0.

get_all_users()

See AuthManager.Core.Controller.get_all_users/0.

get_role_permissions(role)

See AuthManager.Core.Controller.get_role_permissions/1.

get_user_permissions(user)

See AuthManager.Core.Controller.get_user_permissions/1.

get_user_roles(user)

See AuthManager.Core.Controller.get_user_roles/1.

has_role?(user, role)

Verifica si un usuario tiene un rol específico.

role_has_permission?(role, permission)

Verifica si un rol incluye un permiso específico.