Atención al Cliente
Suplantación de Usuario para Soporte y Solución de Problemas
La suplantación permite al personal autorizado iniciar sesión temporalmente como otro usuario para solucionar problemas, verificar configuraciones o ver exactamente lo que el usuario experimenta. Esta función es esencial para el soporte al cliente, pero requiere permisos apropiados y está completamente auditada.
Al suplantar a un cliente, el personal accede al Portal de Autocuidado exactamente como lo ve el cliente, lo que permite una solución de problemas y soporte precisos.
Ver también: RBAC para la configuración de permisos, Clientes para la gestión de clientes, Portal de Autocuidado para las características del portal del cliente.
Propósito
La suplantación de usuario proporciona:
- Solución de Problemas --- Ver exactamente lo que el cliente ve para diagnosticar problemas
- Verificación --- Confirmar que las configuraciones y permisos del servicio funcionan correctamente
- Capacitación --- Demostrar características desde la perspectiva del cliente
- Soporte --- Ayudar a los clientes a navegar por el sistema sin requerir compartir pantalla
- Registro de Auditoría --- Todas las sesiones de suplantación se registran para seguridad y cumplimiento
Permisos Requeridos
Para suplantar usuarios, debes tener uno de los siguientes permisos:
can_impersonate--- Permiso de suplantación dedicado para el personal de soporteadmin--- Acceso administrativo completo (incluye derechos de suplantación)
Los usuarios sin estos permisos no pueden acceder a la función de suplantación.
Cómo Suplantar a un Usuario
A través de la Interfaz Web:
- Navegar al Cliente --- Encontrar al cliente en el CRM
- Seleccionar Contactos --- Ver la lista de contactos del cliente
- Hacer clic en "Iniciar sesión como Usuario" --- El botón aparece junto a cada contacto que tiene una cuenta de usuario
- Confirmar Suplantación --- El sistema puede solicitar confirmación
- La Sesión Comienza --- Ahora has iniciado sesión como ese usuario

A través de la API:
Iniciar sesión de suplantación:
Endpoint: POST /auth/impersonate
Permiso Requerido: can_impersonate o admin
Solicitud:
{
"user_id": 42
}
Respuesta:
{
"success": true,
"impersonating_user_id": 1,
"target_user_id": 42,
"impersonation_start": "2025-01-04T15:30:00Z",
"access_token": "new_token_for_impersonated_user",
"refresh_token": "new_refresh_token"
}
Los tokens devueltos son para la sesión del usuario suplantado.
Qué Ocurre Durante la Suplantación
Cuando suplantas a un usuario:
- Contexto Completo --- Ves el sistema exactamente como lo ve el usuario objetivo:
- Su panel de control y navegación
- Sus datos de cliente (si es un usuario cliente)
- Sus permisos y controles de acceso
- Sus servicios, facturas y uso
- Seguimiento de Sesiones --- El sistema rastrea ambas identidades:
impersonating_user_id--- Tu ID de usuario realtarget_user_id--- El usuario que estás suplantandoimpersonation_start--- Cuando comenzó la suplantación
- Indicador --- La interfaz muestra un banner que indica que estás
suplantando a alguien:
- "Actualmente has iniciado sesión como [Nombre de Usuario]"
- "Haz clic aquí para detener la suplantación"
- Registro de Auditoría --- Todas las acciones se registran con ambos IDs de usuario:
- Las acciones aparecen como realizadas por el usuario objetivo
- Los registros de auditoría registran quién las realizó realmente (usuario suplantador)
- Se mantiene un registro de auditoría completo en la tabla
ImpersonationLog
Detener la Suplantación
A través de la Interfaz Web:
- Hacer clic en el Banner --- Haz clic en el banner de suplantación en la parte superior de la página
- O Navegar --- Ve al menú de usuario y selecciona "Detener Suplantación"
- Confirmación --- La sesión termina y vuelves a tu propia cuenta
A través de la API:
Endpoint: POST /auth/stop_impersonation
Solicitud: No se requiere cuerpo (solicitud autenticada)
Respuesta:
{
"success": true,
"impersonation_end": "2025-01-04T15:45:00Z",
"duration_seconds": 900,
"access_token": "your_original_token",
"refresh_token": "your_original_refresh_token"
}
Tu sesión original se restaura.
Registro de Auditoría de Suplantación
Todas las sesiones de suplantación se registran en la tabla ImpersonationLog
con:
- impersonating_user_id --- Miembro del personal que realizó la suplantación
- target_user_id --- Cliente o usuario que fue suplantado
- impersonation_start --- Marca de tiempo de inicio
- impersonation_end --- Marca de tiempo de finalización (cuando se detuvo la sesión)
- impersonation_duration --- Duración en segundos
Esto proporciona una responsabilidad completa para todas las sesiones de suplantación y permite:
- Auditorías de seguridad --- Revisar quién suplantó a quién y cuándo
- Informes de cumplimiento --- Demostrar el uso adecuado de acceso elevado
- Investigación --- Rastrear acciones durante las sesiones de suplantación
- Monitoreo --- Identificar patrones inusuales de suplantación
Visualización de Registros de Suplantación:
Los administradores pueden consultar los registros de suplantación a través de la API:
GET /auth/impersonation_logs?user_id={user_id}&start_date={date}&end_date={date}
Filtrar por:
- Usuario suplantador (quién realizó la suplantación)
- Usuario objetivo (quién fue suplantado)
- Rango de fechas
- Duración
Mejores Prácticas
- Minimizar la Duración --- Suplantar solo durante el tiempo necesario para resolver el problema
- Documentar el Propósito --- Anotar por qué se necesitó la suplantación en el registro de actividad del cliente
- Informar a los Clientes --- Hacer saber a los clientes que puede que necesites ver su cuenta (política de privacidad)
- Verificar la Identidad --- Confirmar la identidad del usuario antes de suplantar a través de su cuenta
- Revisar Registros --- Auditar regularmente los registros de suplantación en busca de patrones inusuales
- Limitar Permisos --- Solo otorgar
can_impersonateal personal de soporte que lo necesite - Capacitación --- Asegurarse de que el personal entienda la responsabilidad y las implicaciones de auditoría
Consideraciones de Seguridad
- Acceso Completo --- La suplantación otorga acceso completo a la cuenta del usuario objetivo
- No Se Requiere Contraseña --- La suplantación elude la autenticación (solo basada en permisos)
- Acciones Registradas --- Todas las acciones durante la suplantación se atribuyen al usuario objetivo en los registros de la aplicación (pero los registros de auditoría muestran al actor real)
- Aislamiento de Sesiones --- La suplantación crea una nueva sesión; no afecta las sesiones activas del usuario objetivo
- Límites de Tiempo --- Las sesiones de suplantación deben tener un límite de tiempo (configurable)
- Eliminación de MFA --- La suplantación elude los requisitos de 2FA (utiliza la autenticación del suplantador)
Restricciones
- No Se Puede Suplantar a Administradores --- Dependiendo de la configuración, puede que no se pueda suplantar a otros administradores
- Mismos Permisos --- Obtienes los permisos del usuario objetivo, no la unión de los permisos de ambos usuarios
- Límites de Sesión --- Solo se permite una sesión de suplantación por miembro del personal a la vez
- Requisitos de Auditoría --- No se puede desactivar ni ocultar el registro de suplantación
Solución de Problemas Comunes
Problema: El botón "Iniciar sesión como Usuario" no aparece
- Solución: Verifica que tengas el permiso
can_impersonateoadmin - Solución: Confirma que el contacto tenga una cuenta de usuario vinculada
Problema: La suplantación falla con error de permiso
- Solución: Verifica si el usuario objetivo es un administrador (puede estar restringido)
- Solución: Verifica que tu permiso de suplantación esté activo
Problema: No se puede detener la suplantación
- Solución: Utiliza el endpoint de API para detener la suplantación:
POST /auth/stop_impersonation - Solución: Borra las cookies del navegador e inicia sesión nuevamente con tus credenciales
Problema: Las acciones no se registran correctamente
- Solución: Verifica que la sesión de suplantación est�� activa (verifica el banner)
- Solución: Revisa los registros de auditoría - las acciones se registran con ambos IDs de usuario