Skip to main content
PsicoScan ML utiliza un sistema de control de acceso basado en roles (RBAC). Cada usuario tiene asignado exactamente un rol al momento de su creación. El rol determina qué rutas puede visitar, qué acciones puede ejecutar y qué ítems aparecen en la barra lateral.

Los cinco roles

RolEtiqueta en UIQuién lo usa
ADMINAdministradorPersonal de TI o coordinador del sistema
PSICOLOGOPsicóloga/oPsicólogo/a adscrito al plantel
ORIENTADOROrientadorOrientador/a educativo/a
DIRECTORDirectorDirector/a del plantel
ESTUDIANTEEstudianteAlumno que responde el cuestionario

Permisos por rol

ADMIN

Acceso total al sistema. Puede crear, editar y eliminar usuarios de cualquier rol (PSICOLOGO, ORIENTADOR, DIRECTOR). Tiene acceso a todas las rutas del staff más el módulo de administración de usuarios en /usuarios.Acciones exclusivas:
  • Crear y eliminar cuentas de staff
  • Cambiar roles de otros usuarios
  • Importar y exportar estudiantes en masa
  • Ver el histórico de entrenamientos ML en /historico

PSICOLOGO

Acceso clínico completo. Puede aplicar tamizajes, gestionar expedientes clínicos, registrar sesiones, agendar y completar citas, registrar canalizaciones externas y contactos con padres. También tiene acceso al histórico ML.Acciones exclusivas frente a ORIENTADOR:
  • Aplicar cuestionario SENA desde /cuestionario
  • Ver histórico de entrenamiento ML en /historico

ORIENTADOR

Puede consultar la lista de estudiantes y sus tamizajes, registrar contactos con padres, crear canalizaciones y acceder al expediente clínico. No puede aplicar el cuestionario directamente ni acceder al histórico ML.Rutas disponibles:
  • /dashboard, /estudiantes, /citas, /respuestas, /expediente/[id]

DIRECTOR

Vista de seguimiento a nivel plantel. Puede ver el dashboard con las gráficas de distribución de riesgo y los resúmenes de tamizajes, y navegar a la lista de estudiantes. No puede crear ni editar expedientes ni sesiones.Rutas disponibles:
  • /dashboard, /estudiantes

ESTUDIANTE

Acceso exclusivamente al portal del alumno. Al iniciar sesión es redirigido automáticamente a /cuestionario/mi-sena para responder el cuestionario SENA. No puede ver la vista del staff (dashboard, lista de estudiantes, expedientes). Su cuenta puede estar vinculada a un registro Estudiante existente mediante el campo estudianteId.El flujo del estudiante es: autenticación → /cuestionario/mi-sena → respuesta de los 188 reactivos → confirmación en /cuestionario/mi-sena/completado.

La barra lateral (Sidebar) filtra los ítems de navegación según el rol del usuario autenticado. La siguiente tabla muestra qué ítems son visibles para cada rol:
Ítem de navegaciónRutaADMINPSICOLOGOORIENTADORDIRECTORESTUDIANTE
Dashboard/dashboard
Estudiantes/estudiantes
Citas/citas
Cuestionario/cuestionario
Respuestas/respuestas
Histórico ML/historico
Usuarios/usuarios
Mi Cuestionario/cuestionario/mi-sena
El enlace Portal del Alumno (/alumno/login) aparece en la sección “Accesos” de la barra lateral para todos los roles de staff. Abre una pestaña externa independiente.

Cómo se aplica el control de acceso

El servidor verifica el rol en cada Server Action y en cada página protegida usando getServerSession(authOptions). Si el rol del usuario no está en la lista de roles permitidos para esa operación, la acción devuelve { error: "No tienes permiso para esta acción." } o redirige al dashboard. Los roles con permiso para ejecutar acciones clínicas (sesiones, citas, canalizaciones, contactos) son: PSICOLOGO, ORIENTADOR y ADMIN. La gestión de usuarios (crear, editar, eliminar) está restringida únicamente a ADMIN.

Build docs developers (and LLMs) love