Acceso a variables de entorno en n8n
Por qué el acceso directo a process.env en nodos Code representa riesgos de seguridad
¿Qué es este problema?
Acceder a process.env directamente en nodos Code puede exponer variables de entorno sensibles (contraseñas de base de datos, claves API, URLs internas) y está restringido en task runners de n8n v2 por razones de seguridad.
Patrones problemáticos:
•process.env.DATABASE_PASSWORD en nodo Code•Leer AWS_SECRET_ACCESS_KEY directamente•Acceder a URLs de servicios internos desde env•Volcar process.env a logs o salidas
¿Por qué es peligroso?
Exposición de credenciales
Las variables de entorno a menudo contienen secretos críticos que no deberían ser accesibles al código del workflow.
Bypass del sandbox
El acceso directo a env puede evadir los límites de seguridad diseñados de n8n.
Incompatibilidad con v2
Los task runners de n8n v2 bloquean el acceso a env por defecto, rompiendo workflows que dependen de él.
Divulgación de información
Las variables de entorno pueden revelar detalles de infraestructura interna a atacantes.
Cómo solucionarlo
- 1
Usar sistema de variables de n8n
Define variables en Configuración → Variables de n8n y referéncialas con $env en lugar de process.env.
- 2
Usar configuración de workflow
Establece valores específicos del entorno en la configuración del workflow que están apropiadamente delimitados.
- 3
Configurar lista permitida del task runner
Si el acceso a env es requerido, configura N8N_BLOCK_ENV_ACCESS_IN_NODE apropiadamente.
- 4
Auditar dependencias de env
Revisa qué variables de entorno usan tus nodos Code y migra a mecanismos apropiados.
Escanea tu workflow ahora
Sube tu archivo JSON de n8n y detecta nodos Code accediendo a variables de entorno directamente.