Iniciar sesión como cliente
Dónde en el admin: Customers › Customers › List › a customer › header button Impersonate (
/customers/<id>).
Qué hace
Impersonate (login-as) permite a un administrador de soporte ver el portal exactamente como lo ve un cliente, para reproducir un problema o ayudar con un pedido. La sesión dura una hora y está claramente separada de una sesión normal: cualquier acción que pueda otorgar acceso duradero a la cuenta se bloquea y cada uso queda registrado.
Requisitos
| Elemento | Requisito |
|---|---|
| Rol | Un administrador con sesión iniciada en la consola de administración. |
| Cliente | La cuenta debe estar activa. Una cuenta bloqueada o eliminada responde "account is not active" (HTTP 409). |
| Motivo | El motivo es obligatorio; se escribe en el registro de auditoría. |
| Navegador | Permita ventanas emergentes para la dirección de administración: el portal se abre en una nueva ventana. |
Pasos
- Abra Customers › List y haga clic en el cliente.
- Haga clic en Impersonate. Un cuadro de diálogo explica que el sitio del cliente se abre como el cliente durante una hora y que cada acción se audita.
- Escriba el motivo (por ejemplo, "Ticket 1234 — cannot create VM") y haga clic en Open app.
- Se abre una nueva ventana en el sitio del cliente y muestra el panel con
?impersonated=1. Si el navegador bloqueó la ventana, permita las ventanas emergentes y haga clic de nuevo.

Para el cliente de un reseller, la ventana se abre en el dominio propio del reseller, ya que el enlace solo funciona en el propio sitio del cliente.
Cómo funciona
- La acción del admin crea un token de un solo uso válido por una hora y registra
customer.login_as(administrador, IP, motivo, sitio) en el registro de auditoría. - La nueva ventana abre
https://<site>/v1/portal/impersonate/<token>. Una primera solicitud solo muestra una página pequeña y no consume el token (para que la precarga del navegador no lo agote); luego, la página confirma con un POST. - El POST consume el token. Un segundo uso, o el uso tras una hora, responde "The impersonation link has expired or was already used".
- NexCMP crea una sesión de cliente que dura una hora (una sesión normal dura 30 días), registra una entrada de inicio de sesión con el método
impersonatey registracustomer.login_as.used. - El token solo funciona en el propio sitio del cliente; en otro host responde 404.
Qué se bloquea en una sesión de suplantación
Cualquier acción que otorgue acceso más allá de una hora o modifique la seguridad propia del cliente devuelve HTTP 403 impersonate_forbidden:
| Bloqueado | Motivo |
|---|---|
| Cambiar la contraseña, TOTP, vincular o desvincular Google/GitHub, editar passkeys | Credenciales propias del cliente |
| Eliminar la cuenta | Irreversible |
| Crear o editar API keys | Acceso de larga duración |
| Aprobar un inicio de sesión de CLI, escritorio o MCP (vínculo de dispositivo) | Acceso de larga duración |
| Crear acceso a Kubernetes, S3 keys, SSH keys, contraseñas de root, enlaces para compartir consola, credenciales de VPN o proxy | Secretos que perduran tras la sesión |
| Canjear códigos de recarga | Campañas de saldo |
| Retirar o modificar el pago de comisiones de afiliados | Salida de dinero del sistema |
| Editar claves de IA, presupuestos o correos electrónicos de alerta | Configuración del cliente |
Todo lo demás funciona: puede ver las páginas, crear o administrar VMs, realizar pedidos, etc. Las acciones se ejecutan con la identidad del cliente y gastan su dinero; las entradas de auditoría anteriores son las que demuestran que un administrador estuvo detrás de la sesión.
Verificación
- Suplante a un cliente de prueba. El portal se abre y muestra los datos de ese cliente.
- Intente cambiar la contraseña: obtendrá "forbidden" (impersonation).
- En System › Logs › Admin actions, busque
customer.login_ascon su nombre, el motivo y el sitio, seguido decustomer.login_as.used. - Cierre la ventana y vuelva a abrir el mismo enlace: "link expired or already used".
Límites y notas
- El límite de una hora es fijo (3600 segundos). Para continuar, suplante de nuevo.
- Priorice la lectura y la reproducción; evite acciones que gasten dinero salvo que el cliente se lo haya solicitado.
- Cierre la sesión antes de tiempo con Revoke sessions en la página del cliente (esto también cerrará la sesión del cliente).
- Los revendedores disponen de su propia suplantación con Sign in to partner console (60 minutos) desde Resellers; consulte Resellers.
Resolución de problemas
| Síntoma | Causa | Solución |
|---|---|---|
| "La cuenta no está activa" | Cuenta bloqueada o eliminada | Desbloquéela primero o consulte la página del cliente en su lugar. |
| El navegador bloquea la ventana | Bloqueador de ventanas emergentes | Permita las ventanas emergentes para la dirección de administración e inténtelo de nuevo. |
| "Enlace caducado o ya utilizado" | Límite de una hora o reutilización | Suplante de nuevo. |
| Se abre "Not found" | El enlace se utilizó en el host incorrecto | Utilice la ventana abierta por el diálogo; no pegue el enlace en otro lugar. |
| Una acción indica "forbidden" | Bloqueado en sesiones suplantadas | Pídale al cliente que lo haga o utilice las pantallas de administración. |