Subusers (Empleados)
Los subusers son miembros del equipo que trabajan bajo tu cuenta de empresa.
Que es un Subuser
Definicion
SUBUSER = Empleado de una empresa (user)
| Usuario | Tipo | Parent ID |
|---|---|---|
| Empresa ABC (id: 123) | USER | null |
| Maria (Reclutadora) | SUBUSER | 123 |
| Pedro (HR Manager) | SUBUSER | 123 |
| Ana (Hiring Manager) | SUBUSER | 123 |
Todos los subusers ven los mismos datos:
- Candidatos de la empresa
- Vacantes de la empresa
- Proyectos de la empresa
- Procesos de la empresa
Caracteristicas
Subusers:
- Pertenecen a un user (empresa)
- No tienen datos propios
- Ven datos del user padre
- Tienen permisos configurables
- No tienen acceso a facturacion
- Pueden tener roles especificos
Crear Subuser
Desde Lista de Usuarios
- Menu: Administracion → Usuarios
- Click [+ Nuevo Usuario]
- Seleccionar rol: Subuser
- Completar formulario:
Nuevo Subuser
| Campo | Ejemplo |
|---|---|
| Nombre* | Maria Lopez |
| Email* | maria@empresa.com |
| Telefono | +52 55 1234 5678 |
| Rol | Subuser (Empleado) |
| Posicion/Titulo | Reclutadora Senior |
Opciones:
- [✓] Enviar email de bienvenida
Asignacion Automatica
El subuser se crea con:
- parentId = tu id de usuario
- role = "subuser"
- Acceso a tus datos
- Permisos por defecto
Effective User Pattern
Como Funciona
Cuando un subuser hace una consulta:
SUBUSER: Maria (id: 456, parentId: 123)
Request: GET /api/candidates
Sistema:
- Detecta que Maria es subuser
- Obtiene effectiveUserId = parentId = 123
- Busca candidatos donde ownerId = 123
- Retorna candidatos de la empresa
Resultado:
- Maria ve los candidatos de la empresa (id: 123)
- No ve candidatos propios (no tiene)
- Ve lo mismo que el user padre
Codigo Ejemplo
// En el backend, se obtiene el effectiveUserId:
const userId = req.user.id;
const effectiveUserId = req.user.parentId || req.user.id;
// Para queries:
const candidates = await userProfileRepository.find({
where: { ownerId: effectiveUserId }
});
// Tanto users como subusers obtienen
// los mismos resultados
Gestionar Subusers
Ver Lista
Filtrar por subusers:
Menu: Administracion → Usuarios Filtro: [Rol: Subuser]
| NOMBRE | POSICION | ACCIONES | |
|---|---|---|---|
| Maria Lopez | maria@empresa.com | Reclutador | [...] |
| Pedro Garcia | pedro@empresa.com | HR Manager | [...] |
| Ana Martinez | ana@empresa.com | Hiring Mgr | [...] |
Editar Subuser
Menu [...] → Editar
Campos editables:
- Nombre
- Telefono
- Posicion/titulo
- Avatar
- Estado (activo/inactivo)
Campos NO editables:
- Email (identificador unico)
- Rol (es subuser)
Desactivar Subuser
Cuando un empleado deja la empresa:
Menu [...] → Desactivar
Efecto:
- No puede iniciar sesion
- Datos se mantienen
- Puede reactivarse
- No elimina historial
Para eliminar permanentemente:
- Menu [...] → Eliminar (admin only)
Permisos de Subusers
Permisos por Defecto
Un subuser nuevo tiene:
- Ver candidatos ✓
- Ver vacantes ✓
- Ver proyectos ✓
- Ver eventos ✓
- Crear eventos ✓
- Editar candidatos ✗
Permisos limitados por defecto para mayor seguridad.
Configurar Permisos ACL
Para cada subuser:
- Menu [...] → Ver permisos
- Activa/desactiva permisos:
Permisos de Maria Lopez
| MODULO | VER | GESTIONAR | NOTAS |
|---|---|---|---|
| Candidatos | [✓] | [✓] | |
| Vacantes | [✓] | [ ] | Solo lectura |
| Procesos | [✓] | [✓] | |
| Eventos | [✓] | [✓] | |
| Pruebas | [✓] | [ ] | Solo asignar |
| Analytics | [✓] | [N/A] | |
| Usuarios | [ ] | [ ] | Sin acceso |
| Configuracion | [ ] | [ ] | Sin acceso |
Roles Predefinidos
Puedes crear "templates" de permisos:
Reclutador:
- Candidatos: ver + gestionar
- Vacantes: ver
- Eventos: ver + gestionar
- Procesos: ver + gestionar
- Pruebas: ver + asignar
Solo Lectura:
- Todo: ver
- Nada: gestionar
Manager:
- Todo: ver + gestionar
- Excepto: usuarios y config
Casos de Uso
Equipo de Reclutamiento
Empresa ABC necesita:
- 3 reclutadores (acceso completo a candidatos)
- 1 HR manager (acceso a todo + reportes)
- 2 hiring managers (solo entrevistas)
Solucion:
- Crear 6 subusers
- Asignar permisos segun rol
- Cada uno ve los datos de la empresa
Freelancer Temporal
Contratas reclutador freelance:
- Crear subuser con email del freelance
- Asignar permisos limitados
- Cuando termine: desactivar cuenta
- Datos y acciones quedan en historial
Multiples Ubicaciones
Empresa con oficinas en CDMX y GDL:
Opcion 1: Todos como subusers
- Todos ven todos los candidatos
- Filtran por proyecto/ubicacion
Opcion 2: Cuentas separadas
- User CDMX y User GDL
- Cada uno tiene sus subusers
- Datos completamente separados
Limites
Por Plan
Dependiendo de tu suscripcion:
| Plan | Subusers |
|---|---|
| Basico | 3 |
| Pro | 10 |
| Enterprise | Ilimitados |
Al llegar al limite: Debes upgrade o desactivar existentes
Verificar Uso
Menu: Configuracion → Suscripcion
Uso actual:
- Subusers: 8 / 10
- [Upgrade para mas]
Actividad de Subusers
Historial
Ver que ha hecho cada subuser:
Menu: Administracion → Log de actividad
Filtrar por usuario: [Usuario: Maria Lopez]
ACTIVIDAD DE MARIA LOPEZ
| FECHA | ACCION | DETALLE |
|---|---|---|
| 20/01 14:30 | Creo evento | Entrevista Juan |
| 20/01 14:15 | Edito candidato | Pedro Garcia |
| 20/01 13:45 | Movio task | Step 2 → Step 3 |
| 20/01 11:00 | Inicio sesion | Chrome/Mac |
Ultimo Acceso
En lista de usuarios:
| NOMBRE | ULTIMO ACCESO |
|---|---|
| Maria Lopez | Hace 5 minutos |
| Pedro Garcia | Hace 2 horas |
| Ana Martinez | Hace 3 dias (!) |
Usuarios sin actividad reciente pueden indicar:
- Vacaciones
- Ya no trabaja ahi
- Problemas de acceso
Mejores Practicas
Gestion
DO:
- Crear subuser por empleado
- Desactivar cuando se van
- Revisar permisos regularmente
- Usar permisos minimos necesarios
- Documentar roles y responsabilidades
DON'T:
- Compartir cuentas entre empleados
- Dar acceso total a todos
- Olvidar desactivar exempleados
- Crear subusers "de prueba"
- Ignorar actividad sospechosa
Seguridad
Recomendaciones:
- Contraseñas unicas por subuser
- Verificacion de email
- Revisar accesos mensualmente
- Politica de contraseñas
- 2FA si disponible
Permisos
users.read - Ver lista de subusers
users.manage - Crear/editar subusers
Nota: Users siempre pueden ver y gestionar sus propios subusers.
Proximos Pasos
- Roles y Permisos - Entender la jerarquia
- Permisos ACL - Configurar accesos
- Perfil de Usuario - Configuracion personal