n8n-core 2.11.0 → 2.12.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/build.tsbuildinfo +1 -1
- package/dist/errors/error-reporter.js +2 -2
- package/dist/errors/error-reporter.js.map +1 -1
- package/dist/execution-engine/index.d.ts +11 -1
- package/dist/execution-engine/index.js.map +1 -1
- package/dist/execution-engine/node-execution-context/base-execute-context.d.ts +1 -1
- package/dist/execution-engine/node-execution-context/execute-single-context.d.ts +1 -1
- package/dist/execution-engine/node-execution-context/node-execution-context.d.ts +3 -3
- package/dist/execution-engine/node-execution-context/utils/get-additional-keys.d.ts +2 -6
- package/dist/execution-engine/node-execution-context/utils/get-additional-keys.js +4 -4
- package/dist/execution-engine/node-execution-context/utils/get-additional-keys.js.map +1 -1
- package/dist/execution-engine/node-execution-context/utils/get-secrets-proxy.js +28 -26
- package/dist/execution-engine/node-execution-context/utils/get-secrets-proxy.js.map +1 -1
- package/dist/execution-engine/node-execution-context/utils/request-helper-functions.d.ts +4 -3
- package/dist/execution-engine/node-execution-context/utils/request-helper-functions.js +125 -136
- package/dist/execution-engine/node-execution-context/utils/request-helper-functions.js.map +1 -1
- package/dist/html-sandbox.js +1 -1
- package/dist/html-sandbox.js.map +1 -1
- package/package.json +8 -8
|
@@ -81,13 +81,7 @@ axios_1.default.defaults.proxy = false;
|
|
|
81
81
|
function validateUrl(url) {
|
|
82
82
|
if (!url)
|
|
83
83
|
return false;
|
|
84
|
-
|
|
85
|
-
new URL(url);
|
|
86
|
-
return true;
|
|
87
|
-
}
|
|
88
|
-
catch {
|
|
89
|
-
return false;
|
|
90
|
-
}
|
|
84
|
+
return tryParseUrl(url) !== null;
|
|
91
85
|
}
|
|
92
86
|
function isIgnoreStatusErrorConfig(ignoreHttpStatusErrors) {
|
|
93
87
|
return (typeof ignoreHttpStatusErrors === 'object' &&
|
|
@@ -127,15 +121,16 @@ function buildTargetUrl(url, baseURL) {
|
|
|
127
121
|
return undefined;
|
|
128
122
|
}
|
|
129
123
|
}
|
|
130
|
-
function setAxiosAgents(config, agentOptions, proxyConfig) {
|
|
124
|
+
function setAxiosAgents(config, agentOptions, proxyConfig, secureLookup) {
|
|
131
125
|
if (config.httpAgent || config.httpsAgent)
|
|
132
126
|
return;
|
|
133
127
|
const customProxyUrl = getUrlFromProxyConfig(proxyConfig);
|
|
134
128
|
const targetUrl = buildTargetUrl(config.url, config.baseURL);
|
|
135
129
|
if (!targetUrl)
|
|
136
130
|
return;
|
|
137
|
-
|
|
138
|
-
config.
|
|
131
|
+
const effectiveOptions = secureLookup && !customProxyUrl ? { ...agentOptions, lookup: secureLookup } : agentOptions;
|
|
132
|
+
config.httpAgent = (0, http_proxy_1.createHttpProxyAgent)(customProxyUrl, targetUrl, effectiveOptions);
|
|
133
|
+
config.httpsAgent = (0, http_proxy_1.createHttpsProxyAgent)(customProxyUrl, targetUrl, effectiveOptions);
|
|
139
134
|
}
|
|
140
135
|
function applyVendorHeaders(config) {
|
|
141
136
|
if ([config.url, config.baseURL].some((url) => url?.startsWith('https://api.openai.com/'))) {
|
|
@@ -170,15 +165,21 @@ const getHostFromRequestObject = (requestObject) => {
|
|
|
170
165
|
return null;
|
|
171
166
|
}
|
|
172
167
|
};
|
|
173
|
-
const getBeforeRedirectFn = (agentOptions, axiosConfig, proxyConfig, sendCredentialsOnCrossOriginRedirect) => (redirectedRequest) => {
|
|
168
|
+
const getBeforeRedirectFn = (agentOptions, axiosConfig, proxyConfig, sendCredentialsOnCrossOriginRedirect, ssrfBridge) => (redirectedRequest) => {
|
|
169
|
+
if (ssrfBridge) {
|
|
170
|
+
ssrfBridge.validateRedirectSync(redirectedRequest.href);
|
|
171
|
+
}
|
|
174
172
|
const redirectAgentOptions = {
|
|
175
173
|
...agentOptions,
|
|
176
174
|
servername: redirectedRequest.hostname,
|
|
177
175
|
};
|
|
178
176
|
const customProxyUrl = getUrlFromProxyConfig(proxyConfig);
|
|
177
|
+
const effectiveRedirectOptions = ssrfBridge && !customProxyUrl
|
|
178
|
+
? { ...redirectAgentOptions, lookup: ssrfBridge.createSecureLookup() }
|
|
179
|
+
: redirectAgentOptions;
|
|
179
180
|
const targetUrl = redirectedRequest.href;
|
|
180
|
-
const httpAgent = (0, http_proxy_1.createHttpProxyAgent)(customProxyUrl, targetUrl,
|
|
181
|
-
const httpsAgent = (0, http_proxy_1.createHttpsProxyAgent)(customProxyUrl, targetUrl,
|
|
181
|
+
const httpAgent = (0, http_proxy_1.createHttpProxyAgent)(customProxyUrl, targetUrl, effectiveRedirectOptions);
|
|
182
|
+
const httpsAgent = (0, http_proxy_1.createHttpsProxyAgent)(customProxyUrl, targetUrl, effectiveRedirectOptions);
|
|
182
183
|
redirectedRequest.agent = redirectedRequest.href.startsWith('https://')
|
|
183
184
|
? httpsAgent
|
|
184
185
|
: httpAgent;
|
|
@@ -305,7 +306,7 @@ async function generateContentLengthHeader(config) {
|
|
|
305
306
|
di_1.Container.get(backend_common_1.Logger).error('Unable to calculate form data length', { error });
|
|
306
307
|
}
|
|
307
308
|
}
|
|
308
|
-
async function parseRequestObject(requestObject) {
|
|
309
|
+
async function parseRequestObject(requestObject, ssrfBridge) {
|
|
309
310
|
const axiosConfig = {};
|
|
310
311
|
if (requestObject.headers !== undefined) {
|
|
311
312
|
axiosConfig.headers = requestObject.headers;
|
|
@@ -481,8 +482,9 @@ async function parseRequestObject(requestObject) {
|
|
|
481
482
|
if (requestObject.timeout !== undefined) {
|
|
482
483
|
axiosConfig.timeout = requestObject.timeout;
|
|
483
484
|
}
|
|
484
|
-
|
|
485
|
-
axiosConfig
|
|
485
|
+
const secureLookup = ssrfBridge?.createSecureLookup();
|
|
486
|
+
setAxiosAgents(axiosConfig, agentOptions, requestObject.proxy, secureLookup);
|
|
487
|
+
axiosConfig.beforeRedirect = getBeforeRedirectFn(agentOptions, axiosConfig, requestObject.proxy, requestObject.sendCredentialsOnCrossOriginRedirect ?? true, ssrfBridge);
|
|
486
488
|
if (requestObject.useStream) {
|
|
487
489
|
axiosConfig.responseType = 'stream';
|
|
488
490
|
}
|
|
@@ -519,7 +521,10 @@ async function proxyRequestToAxios(workflow, additionalData, node, uriOrObject,
|
|
|
519
521
|
else {
|
|
520
522
|
configObject = uriOrObject ?? {};
|
|
521
523
|
}
|
|
522
|
-
|
|
524
|
+
const ssrfBridge = additionalData?.ssrfBridge;
|
|
525
|
+
const url = resolveLegacyRequestUrl(configObject);
|
|
526
|
+
await validateUrlSsrf(url, ssrfBridge);
|
|
527
|
+
axiosConfig = Object.assign(axiosConfig, await parseRequestObject(configObject, ssrfBridge));
|
|
523
528
|
try {
|
|
524
529
|
const response = await invokeAxios(axiosConfig, configObject.auth);
|
|
525
530
|
let body = response.data;
|
|
@@ -579,7 +584,7 @@ async function proxyRequestToAxios(workflow, additionalData, node, uriOrObject,
|
|
|
579
584
|
throw error;
|
|
580
585
|
}
|
|
581
586
|
}
|
|
582
|
-
function convertN8nRequestToAxios(n8nRequest) {
|
|
587
|
+
function convertN8nRequestToAxios(n8nRequest, ssrfBridge) {
|
|
583
588
|
const { headers, method, timeout, auth, proxy, url } = n8nRequest;
|
|
584
589
|
const axiosRequest = {
|
|
585
590
|
headers: headers ?? {},
|
|
@@ -611,8 +616,9 @@ function convertN8nRequestToAxios(n8nRequest) {
|
|
|
611
616
|
if (n8nRequest.skipSslCertificateValidation === true) {
|
|
612
617
|
agentOptions.rejectUnauthorized = false;
|
|
613
618
|
}
|
|
614
|
-
|
|
615
|
-
axiosRequest
|
|
619
|
+
const secureLookup = ssrfBridge?.createSecureLookup();
|
|
620
|
+
setAxiosAgents(axiosRequest, agentOptions, proxy, secureLookup);
|
|
621
|
+
axiosRequest.beforeRedirect = getBeforeRedirectFn(agentOptions, axiosRequest, n8nRequest.proxy, n8nRequest.sendCredentialsOnCrossOriginRedirect ?? true, ssrfBridge);
|
|
616
622
|
if (n8nRequest.arrayFormat !== undefined) {
|
|
617
623
|
axiosRequest.paramsSerializer = (params) => {
|
|
618
624
|
return (0, qs_1.stringify)(params, { arrayFormat: n8nRequest.arrayFormat });
|
|
@@ -669,6 +675,30 @@ function convertN8nRequestToAxios(n8nRequest) {
|
|
|
669
675
|
}
|
|
670
676
|
return axiosRequest;
|
|
671
677
|
}
|
|
678
|
+
function tryParseUrl(url) {
|
|
679
|
+
try {
|
|
680
|
+
return new URL(url);
|
|
681
|
+
}
|
|
682
|
+
catch {
|
|
683
|
+
return null;
|
|
684
|
+
}
|
|
685
|
+
}
|
|
686
|
+
async function validateUrlSsrf(url, ssrfBridge) {
|
|
687
|
+
if (!ssrfBridge || !url)
|
|
688
|
+
return;
|
|
689
|
+
const parsed = tryParseUrl(url);
|
|
690
|
+
if (!parsed)
|
|
691
|
+
return;
|
|
692
|
+
const result = await ssrfBridge.validateUrl(parsed);
|
|
693
|
+
if (!result.ok) {
|
|
694
|
+
throw result.error;
|
|
695
|
+
}
|
|
696
|
+
}
|
|
697
|
+
function resolveLegacyRequestUrl(requestObject) {
|
|
698
|
+
const rawUrl = requestObject.uri?.toString() ?? requestObject.url?.toString();
|
|
699
|
+
const baseURL = requestObject.baseURL?.toString();
|
|
700
|
+
return buildTargetUrl(rawUrl, baseURL) ?? rawUrl;
|
|
701
|
+
}
|
|
672
702
|
const NoBodyHttpMethods = ['GET', 'HEAD', 'OPTIONS'];
|
|
673
703
|
const removeEmptyBody = (requestOptions) => {
|
|
674
704
|
const method = requestOptions.method || 'GET';
|
|
@@ -677,9 +707,11 @@ const removeEmptyBody = (requestOptions) => {
|
|
|
677
707
|
}
|
|
678
708
|
};
|
|
679
709
|
exports.removeEmptyBody = removeEmptyBody;
|
|
680
|
-
async function httpRequest(requestOptions) {
|
|
710
|
+
async function httpRequest(requestOptions, ssrfBridge) {
|
|
681
711
|
(0, exports.removeEmptyBody)(requestOptions);
|
|
682
|
-
const
|
|
712
|
+
const url = buildTargetUrl(requestOptions.url, requestOptions.baseURL) ?? requestOptions.url;
|
|
713
|
+
await validateUrlSsrf(url, ssrfBridge);
|
|
714
|
+
const axiosRequest = convertN8nRequestToAxios(requestOptions, ssrfBridge);
|
|
683
715
|
if (axiosRequest.data === undefined ||
|
|
684
716
|
(axiosRequest.method !== undefined && axiosRequest.method.toUpperCase() === 'GET')) {
|
|
685
717
|
delete axiosRequest.data;
|
|
@@ -725,6 +757,41 @@ function createOAuth2Client(credentials) {
|
|
|
725
757
|
}),
|
|
726
758
|
});
|
|
727
759
|
}
|
|
760
|
+
async function refreshOrFetchToken(ctx) {
|
|
761
|
+
const { credentials, token, credentialsType, node, additionalData, oAuth2Options, logger } = ctx;
|
|
762
|
+
const tokenRefreshOptions = {};
|
|
763
|
+
if (oAuth2Options?.includeCredentialsOnRefreshOnBody) {
|
|
764
|
+
const body = {
|
|
765
|
+
client_id: credentials.clientId,
|
|
766
|
+
...(credentials.grantType === 'authorizationCode' && {
|
|
767
|
+
client_secret: credentials.clientSecret,
|
|
768
|
+
}),
|
|
769
|
+
};
|
|
770
|
+
tokenRefreshOptions.body = body;
|
|
771
|
+
tokenRefreshOptions.headers = { Authorization: '' };
|
|
772
|
+
}
|
|
773
|
+
logger.debug(`OAuth2 token for "${credentialsType}" used by node "${node.name}" expired. Revalidating.`);
|
|
774
|
+
let newToken;
|
|
775
|
+
if (credentials.grantType === 'clientCredentials') {
|
|
776
|
+
newToken = await token.client.credentials.getToken();
|
|
777
|
+
}
|
|
778
|
+
else {
|
|
779
|
+
newToken = await token.refresh(tokenRefreshOptions);
|
|
780
|
+
}
|
|
781
|
+
logger.debug(`OAuth2 token for "${credentialsType}" used by node "${node.name}" has been renewed.`);
|
|
782
|
+
credentials.oauthTokenData = newToken.data;
|
|
783
|
+
if (!node.credentials?.[credentialsType]) {
|
|
784
|
+
throw new n8n_workflow_1.ApplicationError('Node does not have credential type', {
|
|
785
|
+
extra: { nodeName: node.name, credentialType: credentialsType },
|
|
786
|
+
});
|
|
787
|
+
}
|
|
788
|
+
const nodeCredentials = node.credentials[credentialsType];
|
|
789
|
+
await additionalData.credentialsHelper.updateCredentialsOauthTokenData(nodeCredentials, credentialsType, credentials, additionalData);
|
|
790
|
+
return newToken;
|
|
791
|
+
}
|
|
792
|
+
function resolveTokenExpiredStatusCode(oAuth2Options, credentials) {
|
|
793
|
+
return credentials?.tokenExpiredStatusCode ?? oAuth2Options?.tokenExpiredStatusCode ?? 401;
|
|
794
|
+
}
|
|
728
795
|
async function requestOAuth2(credentialsType, requestOptions, node, additionalData, oAuth2Options, isN8nRequest = false) {
|
|
729
796
|
(0, exports.removeEmptyBody)(requestOptions);
|
|
730
797
|
const credentials = (await this.getCredentials(credentialsType));
|
|
@@ -767,54 +834,35 @@ async function requestOAuth2(credentialsType, requestOptions, node, additionalDa
|
|
|
767
834
|
[oAuth2Options.keyToIncludeInAccessTokenHeader]: token.accessToken,
|
|
768
835
|
});
|
|
769
836
|
}
|
|
837
|
+
const tokenExpiredStatusCode = resolveTokenExpiredStatusCode(oAuth2Options, credentials);
|
|
838
|
+
const refreshCtx = {
|
|
839
|
+
credentials,
|
|
840
|
+
token,
|
|
841
|
+
credentialsType,
|
|
842
|
+
node,
|
|
843
|
+
additionalData,
|
|
844
|
+
oAuth2Options,
|
|
845
|
+
logger: this.logger,
|
|
846
|
+
};
|
|
847
|
+
const retryWithNewToken = async (makeRequest) => {
|
|
848
|
+
const newToken = await refreshOrFetchToken(refreshCtx);
|
|
849
|
+
const refreshedRequestOptions = newToken.sign(requestOptions);
|
|
850
|
+
refreshedRequestOptions.headers = refreshedRequestOptions.headers ?? {};
|
|
851
|
+
if (oAuth2Options?.keyToIncludeInAccessTokenHeader) {
|
|
852
|
+
Object.assign(refreshedRequestOptions.headers, {
|
|
853
|
+
[oAuth2Options.keyToIncludeInAccessTokenHeader]: newToken.accessToken,
|
|
854
|
+
});
|
|
855
|
+
}
|
|
856
|
+
return await makeRequest(refreshedRequestOptions);
|
|
857
|
+
};
|
|
770
858
|
if (isN8nRequest) {
|
|
771
859
|
return await this.helpers.httpRequest(newRequestOptions).catch(async (error) => {
|
|
772
|
-
if (error.response?.status ===
|
|
773
|
-
|
|
774
|
-
const tokenRefreshOptions = {};
|
|
775
|
-
if (oAuth2Options?.includeCredentialsOnRefreshOnBody) {
|
|
776
|
-
const body = {
|
|
777
|
-
client_id: credentials.clientId,
|
|
778
|
-
...(credentials.grantType === 'authorizationCode' && {
|
|
779
|
-
client_secret: credentials.clientSecret,
|
|
780
|
-
}),
|
|
781
|
-
};
|
|
782
|
-
tokenRefreshOptions.body = body;
|
|
783
|
-
tokenRefreshOptions.headers = {
|
|
784
|
-
Authorization: '',
|
|
785
|
-
};
|
|
786
|
-
}
|
|
787
|
-
let newToken;
|
|
788
|
-
this.logger.debug(`OAuth2 token for "${credentialsType}" used by node "${node.name}" has been renewed.`);
|
|
789
|
-
if (credentials.grantType === 'clientCredentials') {
|
|
790
|
-
newToken = await token.client.credentials.getToken();
|
|
791
|
-
}
|
|
792
|
-
else {
|
|
793
|
-
newToken = await token.refresh(tokenRefreshOptions);
|
|
794
|
-
}
|
|
795
|
-
this.logger.debug(`OAuth2 token for "${credentialsType}" used by node "${node.name}" has been renewed.`);
|
|
796
|
-
credentials.oauthTokenData = newToken.data;
|
|
797
|
-
if (!node.credentials?.[credentialsType]) {
|
|
798
|
-
throw new n8n_workflow_1.ApplicationError('Node does not have credential type', {
|
|
799
|
-
extra: { nodeName: node.name, credentialType: credentialsType },
|
|
800
|
-
});
|
|
801
|
-
}
|
|
802
|
-
const nodeCredentials = node.credentials[credentialsType];
|
|
803
|
-
await additionalData.credentialsHelper.updateCredentialsOauthTokenData(nodeCredentials, credentialsType, credentials, additionalData);
|
|
804
|
-
const refreshedRequestOption = newToken.sign(requestOptions);
|
|
805
|
-
if (oAuth2Options?.keyToIncludeInAccessTokenHeader) {
|
|
806
|
-
Object.assign(newRequestHeaders, {
|
|
807
|
-
[oAuth2Options.keyToIncludeInAccessTokenHeader]: token.accessToken,
|
|
808
|
-
});
|
|
809
|
-
}
|
|
810
|
-
return await this.helpers.httpRequest(refreshedRequestOption);
|
|
860
|
+
if (error.response?.status === tokenExpiredStatusCode) {
|
|
861
|
+
return await retryWithNewToken(async (opts) => await this.helpers.httpRequest(opts));
|
|
811
862
|
}
|
|
812
863
|
throw error;
|
|
813
864
|
});
|
|
814
865
|
}
|
|
815
|
-
const tokenExpiredStatusCode = oAuth2Options?.tokenExpiredStatusCode === undefined
|
|
816
|
-
? 401
|
|
817
|
-
: oAuth2Options?.tokenExpiredStatusCode;
|
|
818
866
|
return await this.helpers
|
|
819
867
|
.request(newRequestOptions)
|
|
820
868
|
.then((response) => {
|
|
@@ -828,44 +876,7 @@ async function requestOAuth2(credentialsType, requestOptions, node, additionalDa
|
|
|
828
876
|
})
|
|
829
877
|
.catch(async (error) => {
|
|
830
878
|
if (error.statusCode === tokenExpiredStatusCode) {
|
|
831
|
-
|
|
832
|
-
if (oAuth2Options?.includeCredentialsOnRefreshOnBody) {
|
|
833
|
-
const body = {
|
|
834
|
-
client_id: credentials.clientId,
|
|
835
|
-
client_secret: credentials.clientSecret,
|
|
836
|
-
};
|
|
837
|
-
tokenRefreshOptions.body = body;
|
|
838
|
-
tokenRefreshOptions.headers = {
|
|
839
|
-
Authorization: '',
|
|
840
|
-
};
|
|
841
|
-
}
|
|
842
|
-
this.logger.debug(`OAuth2 token for "${credentialsType}" used by node "${node.name}" expired. Should revalidate.`);
|
|
843
|
-
let newToken;
|
|
844
|
-
if (credentials.grantType === 'clientCredentials') {
|
|
845
|
-
newToken = await token.client.credentials.getToken();
|
|
846
|
-
}
|
|
847
|
-
else {
|
|
848
|
-
newToken = await token.refresh(tokenRefreshOptions);
|
|
849
|
-
}
|
|
850
|
-
this.logger.debug(`OAuth2 token for "${credentialsType}" used by node "${node.name}" has been renewed.`);
|
|
851
|
-
credentials.oauthTokenData = newToken.data;
|
|
852
|
-
if (!node.credentials?.[credentialsType]) {
|
|
853
|
-
throw new n8n_workflow_1.ApplicationError('Node does not have credential type', {
|
|
854
|
-
tags: { credentialType: credentialsType },
|
|
855
|
-
extra: { nodeName: node.name },
|
|
856
|
-
});
|
|
857
|
-
}
|
|
858
|
-
const nodeCredentials = node.credentials[credentialsType];
|
|
859
|
-
await additionalData.credentialsHelper.updateCredentialsOauthTokenData(nodeCredentials, credentialsType, credentials, additionalData);
|
|
860
|
-
this.logger.debug(`OAuth2 token for "${credentialsType}" used by node "${node.name}" has been saved to database successfully.`);
|
|
861
|
-
const newRequestOptions = newToken.sign(requestOptions);
|
|
862
|
-
newRequestOptions.headers = newRequestOptions.headers ?? {};
|
|
863
|
-
if (oAuth2Options?.keyToIncludeInAccessTokenHeader) {
|
|
864
|
-
Object.assign(newRequestOptions.headers, {
|
|
865
|
-
[oAuth2Options.keyToIncludeInAccessTokenHeader]: token.accessToken,
|
|
866
|
-
});
|
|
867
|
-
}
|
|
868
|
-
return await this.helpers.request(newRequestOptions);
|
|
879
|
+
return await retryWithNewToken(async (opts) => await this.helpers.request(opts));
|
|
869
880
|
}
|
|
870
881
|
throw error;
|
|
871
882
|
});
|
|
@@ -935,37 +946,15 @@ async function refreshOAuth2Token(credentialsType, node, additionalData, oAuth2O
|
|
|
935
946
|
...(accessToken ? { access_token: accessToken } : {}),
|
|
936
947
|
...(refreshToken ? { refresh_token: refreshToken } : {}),
|
|
937
948
|
}, oAuth2Options?.tokenType || oauthTokenData.tokenType);
|
|
938
|
-
const
|
|
939
|
-
|
|
940
|
-
|
|
941
|
-
|
|
942
|
-
|
|
943
|
-
|
|
944
|
-
|
|
945
|
-
|
|
946
|
-
|
|
947
|
-
tokenRefreshOptions.headers = {
|
|
948
|
-
Authorization: '',
|
|
949
|
-
};
|
|
950
|
-
}
|
|
951
|
-
this.logger.debug(`Refreshing the OAuth2 token for "${credentialsType}" used by node "${node.name}".`);
|
|
952
|
-
let newToken;
|
|
953
|
-
if (credentials.grantType === 'clientCredentials') {
|
|
954
|
-
newToken = await token.client.credentials.getToken();
|
|
955
|
-
}
|
|
956
|
-
else {
|
|
957
|
-
newToken = await token.refresh(tokenRefreshOptions);
|
|
958
|
-
}
|
|
959
|
-
this.logger.debug(`OAuth2 token for "${credentialsType}" used by node "${node.name}" has been renewed.`);
|
|
960
|
-
credentials.oauthTokenData = newToken.data;
|
|
961
|
-
if (!node.credentials?.[credentialsType]) {
|
|
962
|
-
throw new n8n_workflow_1.ApplicationError('Node does not have credential type', {
|
|
963
|
-
extra: { nodeName: node.name, credentialType: credentialsType },
|
|
964
|
-
});
|
|
965
|
-
}
|
|
966
|
-
const nodeCredentials = node.credentials[credentialsType];
|
|
967
|
-
await additionalData.credentialsHelper.updateCredentialsOauthTokenData(nodeCredentials, credentialsType, credentials, additionalData);
|
|
968
|
-
this.logger.debug(`OAuth2 token for "${credentialsType}" used by node "${node.name}" has been saved to database successfully.`);
|
|
949
|
+
const newToken = await refreshOrFetchToken({
|
|
950
|
+
credentials,
|
|
951
|
+
token,
|
|
952
|
+
credentialsType,
|
|
953
|
+
node,
|
|
954
|
+
additionalData,
|
|
955
|
+
oAuth2Options,
|
|
956
|
+
logger: this.logger,
|
|
957
|
+
});
|
|
969
958
|
return newToken.data;
|
|
970
959
|
}
|
|
971
960
|
async function httpRequestWithAuthentication(credentialsType, requestOptions, workflow, node, additionalData, additionalCredentialOptions) {
|
|
@@ -997,7 +986,7 @@ async function httpRequestWithAuthentication(credentialsType, requestOptions, wo
|
|
|
997
986
|
Object.assign(credentialsDecrypted, data);
|
|
998
987
|
}
|
|
999
988
|
requestOptions = await additionalData.credentialsHelper.authenticate(credentialsDecrypted, credentialsType, requestOptions, workflow, node);
|
|
1000
|
-
return await httpRequest(requestOptions);
|
|
989
|
+
return await httpRequest(requestOptions, additionalData.ssrfBridge);
|
|
1001
990
|
}
|
|
1002
991
|
catch (error) {
|
|
1003
992
|
if (error.response?.status === 401 &&
|
|
@@ -1010,7 +999,7 @@ async function httpRequestWithAuthentication(credentialsType, requestOptions, wo
|
|
|
1010
999
|
}
|
|
1011
1000
|
requestOptions = await additionalData.credentialsHelper.authenticate(credentialsDecrypted, credentialsType, requestOptions, workflow, node);
|
|
1012
1001
|
}
|
|
1013
|
-
return await httpRequest(requestOptions);
|
|
1002
|
+
return await httpRequest(requestOptions, additionalData.ssrfBridge);
|
|
1014
1003
|
}
|
|
1015
1004
|
catch (error) {
|
|
1016
1005
|
throw new n8n_workflow_1.NodeApiError(this.getNode(), error);
|
|
@@ -1210,7 +1199,7 @@ const getRequestHelperFunctions = (workflow, node, additionalData, runExecutionD
|
|
|
1210
1199
|
return responseData;
|
|
1211
1200
|
}
|
|
1212
1201
|
return {
|
|
1213
|
-
httpRequest,
|
|
1202
|
+
httpRequest: async (requestOptions) => await httpRequest(requestOptions, additionalData.ssrfBridge),
|
|
1214
1203
|
requestWithAuthenticationPaginated,
|
|
1215
1204
|
async httpRequestWithAuthentication(credentialsType, requestOptions, additionalCredentialOptions) {
|
|
1216
1205
|
return await httpRequestWithAuthentication.call(this, credentialsType, requestOptions, workflow, node, additionalData, additionalCredentialOptions);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"request-helper-functions.js","sourceRoot":"","sources":["../../../../src/execution-engine/node-execution-context/utils/request-helper-functions.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"request-helper-functions.js","sourceRoot":"","sources":["../../../../src/execution-engine/node-execution-context/utils/request-helper-functions.ts"],"names":[],"mappings":"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"}
|
package/dist/html-sandbox.js
CHANGED
|
@@ -8,7 +8,7 @@ const isWebhookHtmlSandboxingDisabled = () => {
|
|
|
8
8
|
};
|
|
9
9
|
exports.isWebhookHtmlSandboxingDisabled = isWebhookHtmlSandboxingDisabled;
|
|
10
10
|
const getWebhookSandboxCSP = () => {
|
|
11
|
-
return 'sandbox allow-downloads allow-forms allow-modals allow-orientation-lock allow-pointer-lock allow-popups allow-presentation allow-scripts allow-top-navigation
|
|
11
|
+
return 'sandbox allow-downloads allow-forms allow-modals allow-orientation-lock allow-pointer-lock allow-popups allow-presentation allow-scripts allow-top-navigation-by-user-activation allow-top-navigation-to-custom-protocols';
|
|
12
12
|
};
|
|
13
13
|
exports.getWebhookSandboxCSP = getWebhookSandboxCSP;
|
|
14
14
|
//# sourceMappingURL=html-sandbox.js.map
|
package/dist/html-sandbox.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"html-sandbox.js","sourceRoot":"","sources":["../src/html-sandbox.ts"],"names":[],"mappings":";;;AAAA,wCAA6C;AAC7C,gCAAoC;AAE7B,MAAM,+BAA+B,GAAG,GAAG,EAAE;IACnD,OAAO,cAAS,CAAC,GAAG,CAAC,uBAAc,CAAC,CAAC,4BAA4B,CAAC;AACnE,CAAC,CAAC;AAFW,QAAA,+BAA+B,mCAE1C;AAKK,MAAM,oBAAoB,GAAG,GAAW,EAAE;IAChD,OAAO,
|
|
1
|
+
{"version":3,"file":"html-sandbox.js","sourceRoot":"","sources":["../src/html-sandbox.ts"],"names":[],"mappings":";;;AAAA,wCAA6C;AAC7C,gCAAoC;AAE7B,MAAM,+BAA+B,GAAG,GAAG,EAAE;IACnD,OAAO,cAAS,CAAC,GAAG,CAAC,uBAAc,CAAC,CAAC,4BAA4B,CAAC;AACnE,CAAC,CAAC;AAFW,QAAA,+BAA+B,mCAE1C;AAKK,MAAM,oBAAoB,GAAG,GAAW,EAAE;IAChD,OAAO,2NAA2N,CAAC;AACpO,CAAC,CAAC;AAFW,QAAA,oBAAoB,wBAE/B"}
|