Seguridad

Seguridad

Copiar página

Qué tecnología usa Workflow Transactional Email para Shopify Flow, dónde se aloja en la UE y cómo cifra credenciales de correo y datos de su tienda.

Workflow Transactional Email ha sido desarrollada y es gestionada por Code Creation Labs. En esta página se explica en qué consiste la aplicación, dónde se ejecuta, cómo se protegen los datos de su tienda y cómo nos aseguramos de que todo esté actualizado. Está dirigida a los propietarios de tiendas y a cualquier persona que deba cumplimentar un cuestionario de seguridad. La información sobre qué datos almacena la aplicación y durante cuánto tiempo se encuentra en Datos, privacidad y seguridad; los aspectos legales (política de privacidad, acuerdo de tratamiento de datos, subencargados del tratamiento) se encuentran en Aspectos legales y protección de datos.

En qué se basa la aplicación

Capa Lo que utilizamos
Código de solicitud TypeScript en Node.js, una versión actual con soporte a largo plazo. Las páginas de administración, el editor de maquetación y los servicios que ejecutan sus pasos de Shopify Flow comparten una única base de código.
Base de datos y caché PostgreSQL (Google Cloud SQL) y Redis (Google Cloud Memorystore)
Alojamiento web Contenedores en Google Kubernetes Engine en la región «europe-west1» (Bélgica, Unión Europea) de Google Cloud. Las bases de datos, las cachés, el almacenamiento de archivos y los registros de las aplicaciones se encuentran en la propia región.
Integración con Shopify Las bibliotecas de aplicaciones oficiales de Shopify, las acciones de Shopify Flow, la API GraphQL de administración para los permisos opcionales y los webhooks de Shopify
Entrega de correos electrónicos El buzón de correo que conecte: su propio servidor SMTP, Microsoft 365 o Google Workspace. Los correos electrónicos de aviso que le envía la propia aplicación se envían a través de Amazon SES en Fráncfort.
Su tienda online No se ejecuta nada en su plantilla ni en la pantalla de pago.

En ningún lugar del servicio se utiliza PHP, WordPress, Java ni ningún otro entorno de ejecución. La aplicación figura en la Tienda de aplicaciones de Shopify y ha superado el proceso de revisión de aplicaciones de Shopify, que abarca los requisitos de seguridad de Shopify y de protección de los datos de los clientes.

Cómo se protegen sus datos

En tránsito. Todas las conexiones entre su navegador, Shopify, su proveedor de correo electrónico y la aplicación utilizan el protocolo TLS. La base de datos y la caché no tienen dirección pública: solo se puede acceder a ellas desde el interior de nuestra red privada.

En reposo. Todas las bases de datos y el almacenamiento de archivos se cifran en reposo con claves que gestionamos en Google Cloud KMS.

Además, se aplica un cifrado a nivel de campo. Todo aquello que pueda utilizarse para el envío cuenta con una segunda capa de protección: nombres de usuario y contraseñas SMTP, tokens OAuth de Microsoft 365 y Google, los secretos que almacena, el token de acceso a Shopify de su tienda y las direcciones de su lista de baja. Cada valor se cifra individualmente con AES-256-GCM mediante una clave independiente en Cloud KMS, con rotación automática de claves, y se descifra en memoria únicamente durante el tiempo que dura la ejecución de una acción. Cada descifrado de un valor protegido se registra en un registro de acceso interno. Los valores secretos se ocultan del historial de acciones antes de que este se guarde y nunca son devueltos por la API para desarrolladores ni a Sidekick.

Secretos. Las credenciales y claves de la API del propio servicio se almacenan en Google Secret Manager y se cargan al iniciarse el servicio. No se encuentran en el código, ni en las imágenes de contenedor, ni en el proceso de compilación.

Minimización de datos. La aplicación se instala sin acceso a los datos de su tienda. Los datos de los clientes llegan a una dirección de correo electrónico únicamente porque usted los transmite desde Shopify Flow. Los cuatro permisos opcionales (leer el archivo de un metacampo de un pedido o cliente, crear un código de descuento único) se solicitan en el momento, se conceden a través del propio cuadro de diálogo de Shopify y pueden revocarse en cualquier momento. Consulte Permisos: qué datos de sus tiendas puede leer la aplicación.

Quién puede acceder a qué

  • Únicamente su tienda. Cada registro lleva asociado la tienda a la que pertenece, y cada consulta se limita a la tienda con la que se ha realizado la autenticación. Una tienda nunca puede leer ni modificar los diseños, los remitentes, los secretos ni el historial de otra tienda.
  • Solo se aceptan solicitudes verificadas. Las páginas del panel de administración de Shopify se autentican mediante tokens de sesión de Shopify. Los pasos de Shopify Flow y los webhooks propios de Shopify se verifican mediante la firma HMAC de Shopify antes de que se manipule ningún dato, y un paso de Shopify Flow que se envíe dos veces se ejecuta una sola vez.
  • Contenido procesado. Los diseños se procesan en nuestros servidores y el resultado se depura antes de su envío: se eliminan los scripts, los controladores de eventos, las URL «javascript:», los iframes y los elementos de formulario, de modo que un valor enviado desde Shopify Flow no pueda convertirse en contenido activo en la bandeja de entrada de ningún destinatario.
  • Solicitudes salientes. Las URL a las que la aplicación se conecta en su nombre - para la acción HTTP Request, para los archivos adjuntos obtenidos de una URL y para los archivos a los que hace referencia un metacampo - se comprueban antes de establecer la conexión: se rechazan las direcciones de bucle de retorno, locales de enlace, de metadatos en la nube y de redes privadas, incluso a través de una redirección. Las redirecciones están limitadas y el tamaño de las respuestas está restringido.
  • Nuestro equipo. Solo se puede acceder a los sistemas de producción a través de Google Cloud IAM con cuentas individuales. Las herramientas de mantenimiento interno no están expuestas a Internet.

Cómo mantenemos la aplicación actualizada

  • Cada modificación se analiza antes de que pueda enviarse. El proceso de integración realiza comprobaciones de tipos y análisis de código, pruebas estáticas de seguridad de aplicaciones (SAST), detección de datos confidenciales, análisis de vulnerabilidades en las dependencias y análisis de imágenes de contenedores. Nuestro criterio de lanzamiento es que no haya ninguna vulnerabilidad conocida ni en las dependencias ni en la imagen.
  • Entorno de ejecución y sistema operativo. La imagen del contenedor, Node.js sobre su base de Alpine Linux, se recompila con cada lanzamiento, por lo que los parches del entorno de ejecución y del sistema operativo se distribuyen de forma continua. La plataforma gestionada de Kubernetes se encarga de mantener actualizados los nodos subyacentes.
  • Plataforma Shopify. Realizamos un seguimiento de las versiones de la API de Shopify y de los avisos de seguridad relativos a las bibliotecas de aplicaciones de Shopify, y aplicamos las actualizaciones sin demora. La aplicación funciona con una versión actual de la API de administración.
  • Revisiones de seguridad. Llevamos a cabo una revisión interna exhaustiva de cada ruta, cada camino de datos y cada consulta a la base de datos a intervalos regulares; la última de ellas tuvo lugar en octubre de 2026.
  • Supervisión. La disponibilidad se supervisa las 24 horas del día y se publica en nuestra statuspage; además, recibimos alertas en caso de errores. Los registros operativos se almacenan en la misma región de la UE, se conservan durante un máximo de 30 días y nunca contienen credenciales ni información confidencial.

Conservación y supresión

  • El historial de acciones, que recoge lo que se ha enviado y, por lo tanto, constituye información de los clientes, se elimina automáticamente al cabo de 30 días.
  • Al desinstalar la aplicación se elimina todo - plantas, remitentes, secretos, historial, la lista de bajas y los archivos subidos - de forma inmediata e irrecuperable.
  • Las solicitudes de privacidad obligatorias de Shopify (clientes/data_request, clientes/redact y shop/redact) se gestionan automáticamente dentro de los plazos establecidos por Shopify, incluida la inclusión de un cliente en la lista de baja.
  • La tabla completa de los datos que se almacenan se encuentra en Datos, privacidad y seguridad. Los subencargados del tratamiento y el plazo de conservación figuran en la privacy. Se puede solicitar un acuerdo de tratamiento de datos firmado en workflow-transactional-email.app/dpa.

Notificar un problema de seguridad

Si cree que ha detectado una vulnerabilidad o necesita que se le envíe un cuestionario de seguridad, envíe un correo electrónico a support@codecreationlabs.com. Los informes de seguridad se revisan y se responden con carácter prioritario.