Reset User Password (Admin)
POST/company/auth/reset/:id
Endpoint para resetear la contraseña de un usuario (operación administrativa). Genera una nueva contraseña aleatoria y la envía por email.
Permitir que los administradores reseteen la contraseña de cualquier usuario generando una contraseña temporal segura y enviándola por email.
Casos de Uso
- Administrador necesita resetear contraseña de un usuario bloqueado
- Usuario no puede acceder y requiere intervención administrativa
- Soporte técnico resetea credenciales de usuario
Flujo del Proceso
- Administrador solicita reset de contraseña de usuario
- Middleware m.isGestor verifica que el usuario tiene rol de gestor/admin/dev (401 si no)
- Cliente envía POST con ID del usuario en la URL
- Servidor busca usuario por ID en base de datos
- Si el usuario no existe, retorna error 404
- Si el usuario existe, genera contraseña aleatoria segura
- Hashea la nueva contraseña con bcrypt
- Guarda nueva contraseña en base de datos
- Envía email con la nueva contraseña generada
- Retorna datos del usuario actualizados (sin incluir la contraseña)
- Registra acción en historial de seguridad
Seguridad
- Requiere autenticación y permisos de gestión (rol gestor, admin o dev)
- Contraseña generada aleatoriamente es segura (mínimo 8 caracteres)
- Se envía por email para asegurar que el usuario real la reciba
- Requiere autorización adecuada para realizar esta operación
Request
Responses
- 200
- 400
- 401
- 404
Contraseña reseteada exitosamente
Response Headers
Error al resetear contraseña
Response Headers
No autorizado - requiere rol de gestor
Response Headers
Usuario no encontrado