From ddb3baa4eddeb85e2f7abe4465ac4ff4058e1ece Mon Sep 17 00:00:00 2001 From: Jan Oberhauser Date: Wed, 8 Jun 2022 21:06:38 +0200 Subject: [PATCH] feat(core): Make it possible to block access to environment variables --- packages/workflow/src/WorkflowDataProxy.ts | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/packages/workflow/src/WorkflowDataProxy.ts b/packages/workflow/src/WorkflowDataProxy.ts index eeda2ae738..bf24381561 100644 --- a/packages/workflow/src/WorkflowDataProxy.ts +++ b/packages/workflow/src/WorkflowDataProxy.ts @@ -424,10 +424,20 @@ export class WorkflowDataProxy { * @memberof WorkflowDataGetter */ private envGetter() { + const that = this; return new Proxy( {}, { get(target, name, receiver) { + if (process.env.N8N_BLOCK_ENV_ACCESS_IN_NODE === 'true') { + throw new ExpressionError('Environment variable access got disabled', { + causeDetailed: + 'If you need access please contact the administrator to remove the environment variable ‘N8N_BLOCK_ENV_ACCESS_IN_NODE‘', + runIndex: that.runIndex, + itemIndex: that.itemIndex, + failExecution: true, + }); + } return process.env[name.toString()]; }, },