@sap-cloud-sdk/connectivity 4.7.1-20260721014448.0 → 4.8.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.
@@ -45,12 +45,11 @@ const node_https_1 = __importDefault(require("node:https"));
45
45
  const jks = __importStar(require("jks-js"));
46
46
  const util_1 = require("@sap-cloud-sdk/util");
47
47
  /* Careful the proxy imports cause circular dependencies if imported from scp directly */
48
- // eslint-disable-next-line import-x/no-internal-modules
48
+ /* eslint-disable import-x/no-internal-modules */
49
49
  const get_protocol_1 = require("../scp-cf/get-protocol");
50
- // eslint-disable-next-line import-x/no-internal-modules
50
+ const jwt_1 = require("../scp-cf/jwt/jwt");
51
51
  const cache_1 = require("../scp-cf/cache");
52
52
  const http_proxy_util_1 = require("../scp-cf/destination/http-proxy-util");
53
- // eslint-disable-next-line import-x/no-internal-modules
54
53
  const register_destination_cache_1 = require("../scp-cf/destination/register-destination-cache");
55
54
  const logger = (0, util_1.createLogger)({
56
55
  package: 'connectivity',
@@ -239,29 +238,108 @@ exports.defaultAgentOptions = {
239
238
  timeout: 5000
240
239
  };
241
240
  /**
242
- * @internal
243
- * Agents are cached for up to one hour, but can be evicted earlier if more than 100 agents are created.
244
- * See https://nodejs.org/api/https.html#https_https_createserver_options_requestlistener for details on the possible options
241
+ * Builds a secret-free cache key input for the agent cache.
242
+ * For direct destinations the agent is fully defined by its protocol, TLS options and
243
+ * optional `agentOptions`. For the on-premise connectivity proxy all requests share the
244
+ * same proxy origin, so keep-alive sockets would otherwise be reused across Cloud
245
+ * Connector tunnels. To prevent this, the key is additionally scoped by the location ID,
246
+ * the proxy host/port and the propagated principal (derived from stable, non-secret JWT
247
+ * claims).
248
+ * @param destination - Destination to derive the cache key dimensions from.
249
+ * @param options - TLS/agent options that define the agent instance.
250
+ * @returns A plain object to be hashed into the agent cache key.
245
251
  */
246
- async function createAgent(destination, options) {
252
+ function getAgentCacheKeyInput(destination, options) {
247
253
  const protocol = (0, get_protocol_1.getProtocolOrDefault)(destination);
248
- const cacheKey = await (0, cache_1.hashCacheKey)({
254
+ const keyInput = {
249
255
  protocol,
250
256
  options,
251
257
  agentOptions: destination.agentOptions
252
- });
253
- return exports.agentCache.getOrInsertComputed(cacheKey, () => {
254
- logger.debug(`Creating new ${protocol.toUpperCase()} agent for destination ${destination.name || '<unknown>'}`);
255
- const optionsWithDefaults = {
256
- ...exports.defaultAgentOptions,
257
- ...destination.agentOptions,
258
- ...options
259
- };
260
- const entry = protocol === 'https'
261
- ? { httpsAgent: new node_https_1.default.Agent(optionsWithDefaults) }
262
- : { httpAgent: new node_http_1.default.Agent(optionsWithDefaults) };
263
- return { entry };
264
- });
258
+ };
259
+ if (destination.proxyType === 'OnPremise') {
260
+ keyInput.cloudConnectorLocationId = destination.cloudConnectorLocationId;
261
+ keyInput.proxyHost = destination.proxyConfiguration?.host;
262
+ keyInput.proxyPort = destination.proxyConfiguration?.port;
263
+ const principal = getPrincipalCacheKey(destination);
264
+ // PrincipalPropagation binds the Cloud Connector tunnel to the propagated
265
+ // user. Without a stable userId we cannot derive a safe cache key and must
266
+ // skip caching to avoid reusing a tunnel across principals.
267
+ if (destination.authentication === 'PrincipalPropagation' &&
268
+ !principal?.userId) {
269
+ return undefined;
270
+ }
271
+ // For all other OnPremise flows the principal is not strictly required, but
272
+ // we still scope by full available principal information for better cache isolation.
273
+ if (principal) {
274
+ keyInput.principal = principal;
275
+ }
276
+ }
277
+ return keyInput;
278
+ }
279
+ /**
280
+ * Derives a stable, non-secret identity scope for OnPremise destinations from
281
+ * the propagated JWT. The raw token must not be part of the cache key, because
282
+ * it is a secret and rotates on every refresh. `userId` and `tenantId` are
283
+ * stable claims that scope the cache entry to a principal.
284
+ * PrincipalPropagation flows require a `userId`; other flows include the
285
+ * principal only when a user token is present.
286
+ * @param destination - Destination carrying the propagated principal JWT.
287
+ * @returns A stable identity scope, or `undefined` if no usable token is present.
288
+ */
289
+ function getPrincipalCacheKey(destination) {
290
+ const authHeader = destination.proxyConfiguration?.headers?.['SAP-Connectivity-Authentication'];
291
+ if (!authHeader) {
292
+ return undefined;
293
+ }
294
+ const encoded = authHeader.replace(/^Bearer /i, '');
295
+ try {
296
+ const decoded = (0, jwt_1.decodeJwt)(encoded);
297
+ const tenantId = (0, jwt_1.getTenantId)(decoded);
298
+ const userId = (0, jwt_1.userId)(decoded);
299
+ if (!tenantId && !userId) {
300
+ return undefined;
301
+ }
302
+ return { userId, tenantId };
303
+ }
304
+ catch {
305
+ // A malformed token must not break agent creation; fall back to location/host scoping.
306
+ return undefined;
307
+ }
308
+ }
309
+ async function getAgentCacheKey(destination, options) {
310
+ const cacheKeyInput = getAgentCacheKeyInput(destination, options);
311
+ // If the cache key is undefined, avoid caching the agent.
312
+ if (!cacheKeyInput) {
313
+ return undefined;
314
+ }
315
+ return (0, cache_1.hashCacheKey)(cacheKeyInput);
316
+ }
317
+ function createAgentImpl(destination, options) {
318
+ const protocol = (0, get_protocol_1.getProtocolOrDefault)(destination);
319
+ logger.debug(`Creating new ${protocol.toUpperCase()} agent for destination ${destination.name || '<unknown>'}`);
320
+ const optionsWithDefaults = {
321
+ ...exports.defaultAgentOptions,
322
+ ...destination.agentOptions,
323
+ ...options
324
+ };
325
+ return protocol === 'https'
326
+ ? { httpsAgent: new node_https_1.default.Agent(optionsWithDefaults) }
327
+ : { httpAgent: new node_http_1.default.Agent(optionsWithDefaults) };
328
+ }
329
+ /**
330
+ * @internal
331
+ * Agents are cached for up to one hour, but can be evicted earlier if more than 100 agents are created.
332
+ * See https://nodejs.org/api/https.html#https_https_createserver_options_requestlistener for details on the possible options
333
+ */
334
+ async function createAgent(destination, options) {
335
+ const cacheKey = await getAgentCacheKey(destination, options);
336
+ if (!cacheKey) {
337
+ logger.info(`Could not derive a cache key for destination ${destination.name || '<unknown>'}. Creating a new agent without caching.`);
338
+ return createAgentImpl(destination, options);
339
+ }
340
+ return exports.agentCache.getOrInsertComputed(cacheKey, () => ({
341
+ entry: createAgentImpl(destination, options)
342
+ }));
265
343
  }
266
344
  /**
267
345
  * Builds part of the request config containing the URL and if needed proxy agents or normal http agents.
@@ -1 +1 @@
1
- {"version":3,"file":"http-agent.js","sourceRoot":"","sources":["../../src/http-agent/http-agent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"http-agent.js","sourceRoot":"","sources":["../../src/http-agent/http-agent.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sap-cloud-sdk/connectivity",
3
- "version": "4.7.1-20260721014448.0",
3
+ "version": "4.8.0",
4
4
  "description": "SAP Cloud SDK for JavaScript connectivity",
5
5
  "homepage": "https://sap.github.io/cloud-sdk/docs/js/overview",
6
6
  "license": "Apache-2.0",
@@ -36,8 +36,8 @@
36
36
  "jks-js": "^1.1.6",
37
37
  "jsonwebtoken": "^9.0.3",
38
38
  "safe-stable-stringify": "^2.5.0",
39
- "@sap-cloud-sdk/resilience": "^4.7.1-20260721014448.0",
40
- "@sap-cloud-sdk/util": "^4.7.1-20260721014448.0"
39
+ "@sap-cloud-sdk/resilience": "^4.8.0",
40
+ "@sap-cloud-sdk/util": "^4.8.0"
41
41
  },
42
42
  "devDependencies": {
43
43
  "@typescript/native": "npm:typescript@^7.0.2",
@@ -47,7 +47,7 @@
47
47
  "memfs": "^4.57.2",
48
48
  "nock": "^14.0.11",
49
49
  "prettier": "^3.8.1",
50
- "@sap-cloud-sdk/test-util-internal": "^4.7.1-20260721014448.0"
50
+ "@sap-cloud-sdk/test-util-internal": "^4.8.0"
51
51
  },
52
52
  "scripts": {
53
53
  "compile": "tsc -b",