Saltearse al contenido

Roles

El sistema de roles en SMEISA controla el acceso a todas las funcionalidades de la plataforma mediante un modelo basado en permisos. Cada usuario tiene uno o varios roles que determinan qué acciones puede realizar.

  • Rol: Conjunto de permisos agrupados lógicamente (ej: “Administrador”, “Editor”)
  • Permiso: Autorización para realizar una acción específica (formato: recurso_accion)
  • Jerarquía: Los permisos se acumulan (roles superiores incluyen permisos de inferiores)
RolDescripciónPermisos ClaveAcceso Típico
adminControl total del sistema* (todos)Equipo técnico
user_managerGestiona usuariosusers_create, users_edit, users_viewRRHH/Administración
content_managerGestiona contenidocontent_create, content_edit, content_publishEditores/Comunicación
analystAcceso a reportesreports_view, data_exportAnalistas/Dirección
userUsuario básicoprofile_edit, content_viewTodos los usuarios

Los permisos siguen este formato:

<área>_<acción>

Ejemplos comunes:

  • users_create → Crear nuevos usuarios
  • content_edit → Editar contenido existente
  • reports_export → Exportar reportes
  1. Principio de Mínimo Privilegio:

    • Asigne solo los permisos estrictamente necesarios
    • Combine roles específicos en lugar de usar roles genéricos
  2. Nomenclatura:

    • Use nombres descriptivos (ej: finance_reports en lugar de fin_rep)
    • Mantenga consistencia en la estructura recurso_accion
  3. Seguridad:

    • Revise periódicamente los permisos asignados
    • Desactive roles que ya no se utilicen

Puedes listar todos los roles activos mediante la API:

Ventana de terminal
GET /roles

O obtener detalles de un rol específico:

Ventana de terminal
GET /roles/{id}

ℹ️ Nota: Requiere autenticación con rol ROLE_ADMIN

{
"id": 3,
"name": "content_manager",
"description": "Puede crear y editar contenido pero no publicar",
"isActive": true,
"permissions": [
"content_create",
"content_edit",
"media_upload"
],
"createdAt": "2023-06-15T10:30:00Z",
"updatedAt": "2023-11-20T14:15:00Z"
}

¿Puede un usuario tener múltiples roles?
Sí, los permisos se combinan de todos los roles asignados.

¿Cómo sé qué permisos tiene un rol?
Consulta el detalle del rol en GET /roles/{id} donde se listan todos sus permisos.

¿Qué pasa si se elimina un permiso usado por un rol?
El sistema automáticamente actualiza los roles afectados.