AuthManager.Core.Controller (auth_manager_core v0.1.1)

Controlador principal que proporciona funciones para gestionar usuarios, roles y permisos.

Summary

Functions

Asigna un permiso padre a un permiso hijo.

Asigna un rol padre a un rol hijo.

Asigna un rol a un usuario.

Verifica si un usuario tiene un permiso específico. Considera permisos directos, heredados a través de roles y padres de permisos.

Función unificada para verificar permisos o roles.

Crea un nuevo permiso.

Crea un nuevo rol.

Crea un nuevo usuario.

Obtiene todos los permisos.

Obtiene todos los roles.

Obtiene todos los usuarios.

Obtiene todos los permisos de un rol. Incluye permisos directos y a través de roles padre.

Obtiene todos los permisos de un usuario. Incluye permisos directos y a través de roles.

Obtiene todos los roles de un usuario.

Verifica si un usuario tiene un rol específico. Considera roles directos y heredados a través de roles padres.

Obtiene el repositorio configurado para la aplicación.

Verifica si un rol tiene un permiso específico. Considera permisos directos y heredados a través de roles padres.

Functions

assign_parent_permission(child_permission, parent_permission)

Asigna un permiso padre a un permiso hijo.

assign_parent_role(child_role, parent_role, opts \\ [])

Asigna un rol padre a un rol hijo.

assign_permission_to_role(role, permission, opts \\ [])

Asigna un permiso a un rol.

assign_permission_to_user(user, permission, opts \\ [])

Asigna un permiso a un usuario.

assign_role_to_user(user, role, opts \\ [])

Asigna un rol a un usuario.

can?(user, permission)

Verifica si un usuario tiene un permiso específico. Considera permisos directos, heredados a través de roles y padres de permisos.

can_by?(opts)

Función unificada para verificar permisos o roles.

Opciones admitidas:

  • user: El usuario a verificar
  • permission: El permiso a verificar
  • role: El rol a verificar

Ejemplos:

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

create_permission(attrs)

Crea un nuevo permiso.

create_role(attrs)

Crea un nuevo rol.

create_user(attrs)

Crea un nuevo usuario.

get_all_permissions()

Obtiene todos los permisos.

get_all_roles()

Obtiene todos los roles.

get_all_users()

Obtiene todos los usuarios.

get_role_permissions(role)

Obtiene todos los permisos de un rol. Incluye permisos directos y a través de roles padre.

get_user_permissions(user)

Obtiene todos los permisos de un usuario. Incluye permisos directos y a través de roles.

get_user_roles(user)

Obtiene todos los roles de un usuario.

has_role?(user, role)

Verifica si un usuario tiene un rol específico. Considera roles directos y heredados a través de roles padres.

repo()

Obtiene el repositorio configurado para la aplicación.

role_has_permission?(role, permission)

Verifica si un rol tiene un permiso específico. Considera permisos directos y heredados a través de roles padres.