Acceso a entorno de task runner
Por qué acceder a process.env en task runners puede exponer configuración sensible del servidor
¿Qué es este problema?
Cuando nodos Code o task runners acceden a process.env directamente, pueden leer variables de entorno sensibles como contraseñas de base de datos, claves maestras de API, o secretos de encriptación que solo deberían ser accesibles a nivel de servidor.
Patrones peligrosos:
•process.env.DATABASE_URL en nodo Code•Leer N8N_ENCRYPTION_KEY desde código•Acceder a credenciales de proveedor cloud•Loguear todas las variables de entorno
¿Por qué es peligroso?
Exposición de credenciales
Secretos a nivel de servidor como contraseñas de BD pueden ser accedidos y exfiltrados.
Escalada de privilegios
Autores de workflow obtienen acceso a secretos que no deberían ver.
Bypass de auditoría
El acceso a entorno evade la gestión de credenciales y logging de n8n.
Riesgos multi-tenant
En entornos compartidos, un usuario podría acceder a secretos de otro.
Cómo solucionarlo
- 1
Usar credenciales de n8n
Almacena secretos en el sistema de credenciales de n8n en lugar de variables de entorno.
- 2
Restringir acceso a entorno
Configura N8N_BLOCK_ENV_ACCESS_IN_NODE=true para prevenir acceso a env en nodos Code.
- 3
Usar runner externo
Ejecuta nodos Code en contenedores de task runner aislados con acceso mínimo a env.
- 4
Implementar allowlist de nodo Code
Usa nodos comunitarios o extensiones personalizadas que limiten las APIs disponibles.
Escanea tu workflow ahora
Sube tu archivo JSON de n8n y detecta nodos Code accediendo a variables de entorno.