Qué resuelve
Una contraseña robada no debería bastar para entrar al Back Office. El módulo añade un segundo factor sin enviar el secreto a APIs de terceros.
Compatibilidad verificada
La versión 0.0.8 está validada en PrestaShop 1.7.8.11 con PHP 7.4, PrestaShop 8.2.7 con PHP 8.1 y PrestaShop 9.1.4 con PHP 8.5.
Funciones principales
- Enrolamiento TOTP con contraseña actual y QR generado localmente.
- Secretos cifrados con AES-256-GCM y códigos de recuperación HMAC de un solo uso.
- Bloqueo del replay TOTP mediante avance atómico del contador.
- Protección contra fuerza bruta de contraseña y MFA por IP e identidad, con límites y bloqueos configurables.
- IPv4, IPv6, CIDR, proxies de confianza y listas de red sin permitir que una lista segura omita MFA.
- Dispositivos de confianza con tokens de 256 bits, hash, expiración y revocación.
- Autoservicio por empleado separado de la administración global.
- Políticas MFA por perfil y tienda con resolución multitienda por máxima exigencia.
- Invalidación configurable de sesiones y dispositivos tras cambiar la contraseña.
- Recuperación de emergencia exclusivamente por consola con clave de un solo uso.
- Código opcional por email durante un reto MFA, con caducidad, HMAC y límites de envío.
- Postura de seguridad dividida en tres pestañas accesibles.
- Registros encadenados mediante HMAC, con retención, exportación firmada, filtros y paginación.
- Alertas por email equivalentes en PrestaShop 1.7, 8 y 9.
- Cuarentena mínima sin navegación hasta completar MFA.
- Comprobador seguro mediante PrestaWard Update Manifest v1.
Uso seguro
El modo inicial es Desactivado. Cada empleado configura su cuenta desde Mi autenticación; el administrador revisa el despliegue, pasa por Solo auditoría y activa Forzar cuando la recuperación esté comprobada.
Changelog
0.0.8
- Época de seguridad por empleado para invalidar sesiones, retos y dispositivos anteriores.
- Invalidación configurable tras cualquier cambio de contraseña, solo recuperación o cambio administrativo, o nunca.
- Políticas «Heredar», «Obligatorio», «Opcional» y «Desactivado» por perfil y tienda.
- Superadministradores siempre obligados en modo Forzar y resolución multitienda por la política más estricta.
- Clave de emergencia de un solo uso y recuperación exclusivamente por consola, sin bypass web permanente.
- Recuperación opcional por email durante un reto MFA, con código de ocho dígitos, HMAC, cinco minutos de caducidad y limitación de envíos.
- Registros encadenados mediante HMAC, diagnóstico de integridad, retención de 30 a 730 días y exportación JSON firmada.
- Migración idempotente 0.0.8 y actualización validada desde 0.0.7 en PrestaShop 1.7, 8 y 9.
0.0.7
- «Postura de seguridad» dividida en «MFA y avisos», «Intentos y bloqueos» y «Red e IP», con guardado atómico.
- Navegación de pestañas accesible por teclado, persistencia de selección y apertura automática del panel con errores de validación.
- Paginación real de registros en base de datos con 25, 50 o 100 filas por página.
- Filtros de registros por intervalo de fechas, empleado o email, evento, resultado e IP.
- Cabecera de «Mi autenticación» rediseñada con mejor contraste, jerarquía, adaptación móvil y accesos corporativos.
- La prueba de correo comprueba transporte y destinatarios sin exigir que las alertas operativas estén activas.
- Diagnóstico visible del transporte de PrestaShop, diferenciando servidores de captura y SMTP real.
- Diagnóstico de errores compatible con los registros
SwiftMessageyMailerMessagede PrestaShop 1.7, 8 y 9. - Eliminado el prefijo duplicado de la tienda en los asuntos y reforzado el enlace alternativo al Back Office.
- Envío corporativo validado mediante Exchange Online en las tres versiones compatibles.
- Panel de actualizaciones homogeneizado con Snapshot mediante PrestaWard Update Manifest v1, estado, criticidad y SHA-256.
- Migración idempotente 0.0.7 y actualización validada desde 0.0.6 en PrestaShop 1.7, 8 y 9.
0.0.6
- Protección transaccional contra fuerza bruta de contraseña y MFA por IP e identidad.
- Compatibilidad con IPv4, IPv6, CIDR, proxies de confianza, lista permitida y lista de bloqueo.
- Avisos de bloqueo limitados para impedir tormentas de correo provocadas.
- Cuarentena de servidor sin menú, accesos rápidos ni contenido del Back Office.
- «Mi autenticación» rediseñada con cuatro pasos, etiquetas accesibles, recuperación exportable y revocación individual.
- Correos equivalentes y traducidos en PrestaShop 1.7, 8 y 9, con resultado por destinatario.
- Comprobador endurecido: HTTPS corporativo, sin redirecciones, TLS, límite de cuerpo y manifiesto v1 estricto.
- Migración 0.0.6, actualización desde 0.0.5 y matrices completas en las tres versiones compatibles.
0.0.5
- Acceso por etapas: PrestaShop valida primero la contraseña y después solicita TOTP o recuperación.
- Sesión autenticada en cuarentena, vinculada al empleado y limitada a «Mi autenticación» hasta completar MFA.
- Cierre del acceso lateral mediante controladores directos y peticiones AJAX/XHR.
- Enrolamiento obligatorio para empleados y superadministradores sin TOTP confirmado.
- Dispositivos de confianza corregidos en PrestaShop 9 y vinculados al empleado y al navegador.
- Segundo factor rediseñado en español con el sistema visual PrestaWard.
- Guía ampliada con capturas reales del segundo factor en PrestaShop 1.7, 8 y 9.
- Matriz limpia completa: correo, TOTP, anti-replay, recuperación, confianza y cuarentena.
0.0.4
- Enrolamiento obligatorio en «Mi autenticación» para cuentas sin TOTP cuando el modo está en Forzar.
- Segundo paso de acceso mostrado únicamente después de verificar la contraseña.
- Superadministradores incluidos en el mismo flujo de autenticación personal.
- Formulario MFA del login rediseñado y traducido al español.
- Error 500 del email de prueba corregido.
- Autoservicio MFA separado para cada empleado.
- Política, inventario, correo y logs restringidos al superadministrador.
- Permisos modernos y legacy reconstruidos de forma idempotente.
- Diagnóstico preciso de destinatarios, configuración SMTP y transporte.
- IP real unificada en logs, rate limiting, emails y dispositivos de confianza.
- Eventos y textos del Back Office traducidos al español.
- Cabeceras y diseño alineados con la familia PrestaWard.
- Soporte corporativo restaurado a hola@go-onagency.es.
- Upgrade 0.0.4 y matriz limpia en PrestaShop 1.7, 8 y 9.
0.0.3
- Geometría visual unificada con PrestaWard Snapshot.
- Dispositivos de confianza revocables con tokens aleatorios de 256 bits almacenados como hash.
- Cookies Secure, HttpOnly y SameSite=Lax limitadas al Back Office.
- Alertas equivalentes en las integraciones legacy y Symfony.
- Branding, enlaces de producto, guía, soporte y email de prueba.
- Validación del rate limit en PrestaShop 1.7, 8 y 9.
0.0.2
- Enrolamiento TOTP protegido por contraseña y QR local.
- Códigos de recuperación de un solo uso almacenados como HMAC.
- Protección atómica contra replay TOTP.
- Rate limiting por cuenta e IP.
- Integraciones específicas para login legacy y PrestaShop 9 Symfony.
- Rotación del autenticador y retirada MFA protegidas por contraseña y factor.
0.0.1
- Scaffold seguro desactivado por defecto.
- Tablas MFA, TOTP, dashboard, auditoría, logs, alertas y traducciones iniciales.