Revocar todas las sesiones PIN
Endpoint: POST /auth/pin/session/revoke-all
Permite revocar todas las sesiones PIN aprobadas del usuario autenticado en todos los dispositivos y tokens JWT. Esto fuerza re-verificación PIN en todas las ubicaciones donde el usuario tiene sesiones activas.
🔐 Requiere autenticación JWT
Debes enviar un token JWT válido en el header:
Authorization: Bearer <accessToken>
📝 Cuerpo de la solicitud
No requiere body.
📋 Respuestas
✅ 200 OK
-
Todas las sesiones revocadas correctamente
{
"code": 1001,
"message": "All PIN sessions revoked successfully",
"data": {
"allSessionsRevoked": true,
"revokedAt": "2025-01-20T14:55:00.000Z"
}
} -
No había sesiones activas para revocar
{
"code": 1001,
"message": "No active PIN sessions to revoke",
"data": {
"allSessionsRevoked": false,
"revokedAt": null
}
}
❌ 401 Unauthorized
-
Sin token válido
{
"statusCode": 401,
"message": "Unauthorized"
}
🌐 Alcance de la revocación
Sesiones afectadas
- Todos los dispositivos: Móvil, web, desktop, etc.
- Todos los tokens JWT: Sesiones en diferentes navegadores/apps
- Todas las ubicaciones: Oficina, casa, dispositivos públicos
- Todas las aplicaciones: Si el PIN se comparte entre apps del ecosistema
Datos preservados
- Configuración PIN del usuario
- Historial de configuraciones PIN
- Intentos fallidos y estadísticas
- Configuración de activación/desactivación
📝 Casos de uso críticos
Seguridad comprometida
- Sospecha de acceso no autorizado a algún dispositivo
- Dispositivo perdido o robado con sesión PIN activa
- Cambio de contraseñas por seguridad
- Detección de actividad sospechosa
Gestión administrativa
- Limpieza masiva de sesiones por políticas de seguridad
- Rotación de credenciales programada
- Mantenimiento de seguridad preventivo
- Implementación de nuevas políticas de acceso
Debugging y testing
- Limpiar todas las sesiones para pruebas desde cero
- Verificar comportamiento de sistemas distribuidos
- Simular escenarios de pérdida de sesión masiva
⚠️ Impacto operacional
Para el usuario
- Re-verificación inmediata: Necesitará verificar PIN en todos los dispositivos
- Interrupción de sesiones: Operaciones en curso pueden requerir re-autenticación
- Experiencia temporal: Inconveniente temporal por seguridad adicional
Para el sistema
- Limpieza de Redis: Se eliminan todas las entradas de sesión del usuario
- Logs de auditoría: Se registra la revocación masiva para auditoría
- Sincronización: Cambios se propagan inmediatamente a todos los servicios
📝 Notas importantes
- Acción irreversible: No se pueden restaurar las sesiones revocadas
- Efecto inmediato: La revocación es instantánea en todo el sistema
- Seguridad primero: Prefiere la seguridad sobre la conveniencia del usuario
- Auditoría completa: Todas las revocaciones masivas se registran para compliance
🔗 Endpoints relacionados
/auth/pin/verify- Crear nuevas sesiones después de revocación masiva/auth/pin/session/status- Verificar que no hay sesiones activas/auth/pin/session/revoke- Revocar solo sesión actual
🚨 Recomendaciones de uso
Cuándo usar
- Respuesta a incidentes de seguridad
- Cambios de contraseña por compromiso
- Pérdida de dispositivos con sesiones activas
- Implementación de políticas de seguridad estrictas
Cuándo NO usar
- Logout normal de aplicación (usar
/auth/pin/session/revoke) - Testing rutinario (considerar métodos menos disruptivos)
- Mantenimiento regular (evaluar el impacto en usuarios activos)
⚠️ Atención: Este endpoint afecta TODAS las sesiones PIN del usuario en TODOS los dispositivos. Usar solo cuando sea absolutamente necesario por razones de seguridad.