Seguridad técnica

Cómo protegemos tus certificados

AlertaCert almacena credenciales fiscales críticas. Estas son las medidas técnicas concretas que aplicamos, sin eufemismos de marketing.

Cifrado AES-256-GCM en reposo

Todos los archivos de certificado (.p12, .cer, .key, .pem) se almacenan cifrados con AES-256-GCM siguiendo un modelo de clave de dos niveles: cada archivo tiene su propia clave de cifrado de datos (DEK), envuelta por una clave de cifrado de claves (KEK) gestionada en AWS KMS. Las contraseñas de certificados se cifran antes de escribirse en la base de datos — no se aplica hash, porque deben usarse operacionalmente para cargar los certificados.

Rotación de KEK aplicada en AWS KMS. Las DEK se re-envuelven en cada rotación sin exponer el contenido de los archivos.

Autenticación con llave de acceso (Passkey / WebAuthn)

AlertaCert soporta llaves de acceso biométricas (Face ID, huella digital, Windows Hello) como segundo factor de autenticación. Las llaves de acceso son resistentes a phishing por diseño — nunca se transmiten al servidor.

Disponible en todos los planes. Los administradores pueden exigirlas a todos los miembros del equipo.

Re-autenticación para acciones sensibles

Las acciones de alto riesgo — revelar contraseña, descargar certificado, eliminar, firmar documentos, gestionar miembros — requieren re-autenticación reciente. Si tu sesión es antigua, se te pedirá confirmar tu identidad antes de proceder.

Mitiga el riesgo de sesiones secuestradas incluso con una sesión activa.

Control de acceso por roles

Cada organización tiene roles de administrador y miembro. Los miembros no pueden invitar usuarios, cambiar roles, eliminar clientes, ni cancelar flujos de firma. Los administradores controlan exactamente qué permisos son sensibles en su organización.

Límite de asientos aplicado en tiempo real — sin acceso fantasma.

Registro de auditoría inmutable

Cada acción sensible — subida, descarga, revelación de contraseña, firma, eliminación, cambio de rol — queda registrada en un log de auditoría. El log no tiene política de INSERT, UPDATE ni DELETE para ningún usuario ni administrador: solo el cliente de servicio puede agregar entradas. Las entradas del log están encadenadas por hash — cada entrada incluye el hash de la anterior, haciendo detectable cualquier manipulación silenciosa.

Los administradores pueden filtrar el historial completo desde Configuración → Auditoría.

Límite de tasa en endpoints sensibles

Los endpoints de carga, descarga, firma y autenticación tienen límites de tasa por usuario. Los intentos excesivos son bloqueados antes de llegar a la base de datos.

Los controles de seguridad siempre fallan de forma cerrada — los límites de tasa y las verificaciones de autenticación nunca se omiten por errores de infraestructura.

Row-Level Security en toda la base de datos

Cada tabla de la base de datos tiene RLS (Row-Level Security) habilitado. Los datos de una organización son inaccesibles desde consultas de otra organización, incluso si se usa la misma instancia de base de datos. Las claves de rol de servicio se almacenan en gestión de secretos, nunca en el código de la aplicación, y se rotan regularmente. Las URLs de archivos se firman con ventanas de expiración cortas y se sirven a través de un proxy del lado del servidor — nunca con larga duración ni predecibles públicamente.

Aislamiento de datos garantizado a nivel de motor de base de datos, no solo en código de aplicación.

Validación de archivos en carga

Cada archivo subido es validado por magic bytes antes de almacenarse. Un archivo que no sea DER/PKCS12 o PEM válido es rechazado. Nunca se almacenan archivos arbitrarios disfrazados de certificados.

Las descargas se sirven en proxy server-side con Cache-Control: no-store.

Infraestructura de terceros

AlertaCert no opera sus propios servidores. Confiamos en proveedores de infraestructura con certificaciones propias.

Base de datosSupabase (PostgreSQL) — infraestructura administrada con copias de seguridad automáticas
AlmacenamientoSupabase Storage — buckets privados, acceso firmado, RLS aplicado
AutenticaciónSupabase Auth — tokens JWT de corta duración
Gestión de clavesAWS KMS — cifrado en sobre con separación DEK/KEK. Rotación de claves aplicada. Sin claves en texto plano en la configuración de la aplicación.
PagosStripe — AlertaCert nunca almacena datos de tarjetas
CorreoResend — solo metadatos de notificaciones, sin contenido de certificados
TransporteHTTPS obligatorio en todos los endpoints. Sin excepciones HTTP.

Lo que nunca hacemos

  • Acceder al contenido de tus archivos de certificado sin autorización explícita de AWS KMS y un registro de auditoría verificable. Cada evento de descifrado requiere uso deliberado de la clave KMS — ningún acceso en segundo plano o silencioso es arquitectónicamente posible.
  • Vender o compartir datos de certificados con terceros
  • Almacenar contraseñas de certificados en texto plano
  • Transmitir archivos de certificados a servicios externos (salvo al almacenamiento cifrado)
  • Usar cookies de rastreo publicitario
  • Registrar el contenido de los archivos — solo metadatos (nombre, tipo, vencimiento)

¿Encontraste una vulnerabilidad o tienes preguntas sobre seguridad?

[email protected]