@agenshield/interceptor 0.4.3 → 0.4.4
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/events/reporter.d.ts.map +1 -1
- package/index.js +28 -29
- package/installer.d.ts.map +1 -1
- package/interceptors/base.d.ts +7 -0
- package/interceptors/base.d.ts.map +1 -1
- package/interceptors/fetch.d.ts +0 -1
- package/interceptors/fetch.d.ts.map +1 -1
- package/interceptors/http.d.ts +0 -1
- package/interceptors/http.d.ts.map +1 -1
- package/interceptors/websocket.d.ts +0 -1
- package/interceptors/websocket.d.ts.map +1 -1
- package/package.json +2 -2
- package/register.js +28 -29
- package/require.js +28 -29
package/events/reporter.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reporter.d.ts","sourceRoot":"","sources":["../../src/events/reporter.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAE5D,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,WAAW,CAAC;IACpB,QAAQ,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;CAC/C;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,WAAW,GAAG,OAAO,GAAG,MAAM,GAAG,OAAO,CAAC;IAC/C,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,IAAI,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,qBAAa,aAAa;IACxB,OAAO,CAAC,MAAM,CAAc;IAC5B,OAAO,CAAC,QAAQ,CAAmC;IACnD,OAAO,CAAC,KAAK,CAA0B;IACvC,OAAO,CAAC,aAAa,CAA+B;IACpD,OAAO,CAAC,gBAAgB,CAAK;IAE7B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,cAAc,CAAO;IAC7C,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAK;IAExC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAK5B;gBAEU,OAAO,EAAE,oBAAoB;
|
|
1
|
+
{"version":3,"file":"reporter.d.ts","sourceRoot":"","sources":["../../src/events/reporter.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAE5D,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,WAAW,CAAC;IACpB,QAAQ,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;CAC/C;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,WAAW,GAAG,OAAO,GAAG,MAAM,GAAG,OAAO,CAAC;IAC/C,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,IAAI,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,qBAAa,aAAa;IACxB,OAAO,CAAC,MAAM,CAAc;IAC5B,OAAO,CAAC,QAAQ,CAAmC;IACnD,OAAO,CAAC,KAAK,CAA0B;IACvC,OAAO,CAAC,aAAa,CAA+B;IACpD,OAAO,CAAC,gBAAgB,CAAK;IAE7B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,cAAc,CAAO;IAC7C,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAK;IAExC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAK5B;gBAEU,OAAO,EAAE,oBAAoB;IASzC;;OAEG;IACH,MAAM,CAAC,KAAK,EAAE,gBAAgB,GAAG,IAAI;IAqBrC;;OAEG;IACH,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IASlD;;OAEG;IACH,KAAK,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI;IAWpF;;OAEG;IACH,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI;IAWjF;;OAEG;IACH,KAAK,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAU7D;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAsB5B;;OAEG;IACH,IAAI,IAAI,IAAI;IAUZ;;OAEG;IACH,OAAO,CAAC,WAAW;IAenB;;OAEG;IACH,OAAO,CAAC,SAAS;CAGlB"}
|
package/index.js
CHANGED
|
@@ -109,11 +109,28 @@ var BaseInterceptor = class {
|
|
|
109
109
|
eventReporter;
|
|
110
110
|
failOpen;
|
|
111
111
|
installed = false;
|
|
112
|
+
brokerHttpPort;
|
|
112
113
|
constructor(options) {
|
|
113
114
|
this.client = options.client;
|
|
114
115
|
this.policyEvaluator = options.policyEvaluator;
|
|
115
116
|
this.eventReporter = options.eventReporter;
|
|
116
117
|
this.failOpen = options.failOpen;
|
|
118
|
+
this.brokerHttpPort = options.brokerHttpPort ?? 5201;
|
|
119
|
+
}
|
|
120
|
+
/**
|
|
121
|
+
* Check if a URL targets the broker or daemon (should not be intercepted)
|
|
122
|
+
*/
|
|
123
|
+
isBrokerUrl(url) {
|
|
124
|
+
try {
|
|
125
|
+
const parsed = new URL(url);
|
|
126
|
+
if (parsed.hostname !== "localhost" && parsed.hostname !== "127.0.0.1") {
|
|
127
|
+
return false;
|
|
128
|
+
}
|
|
129
|
+
const port = parsed.port;
|
|
130
|
+
return port === String(this.brokerHttpPort) || port === "5200";
|
|
131
|
+
} catch {
|
|
132
|
+
return false;
|
|
133
|
+
}
|
|
117
134
|
}
|
|
118
135
|
/**
|
|
119
136
|
* Check if the interceptor is installed
|
|
@@ -248,14 +265,6 @@ var FetchInterceptor = class extends BaseInterceptor {
|
|
|
248
265
|
throw error;
|
|
249
266
|
}
|
|
250
267
|
}
|
|
251
|
-
isBrokerUrl(url) {
|
|
252
|
-
try {
|
|
253
|
-
const parsed = new URL(url);
|
|
254
|
-
return (parsed.hostname === "localhost" || parsed.hostname === "127.0.0.1") && parsed.port === "5200";
|
|
255
|
-
} catch {
|
|
256
|
-
return false;
|
|
257
|
-
}
|
|
258
|
-
}
|
|
259
268
|
};
|
|
260
269
|
|
|
261
270
|
// libs/shield-interceptor/src/interceptors/http.ts
|
|
@@ -348,14 +357,6 @@ var HttpInterceptor = class extends BaseInterceptor {
|
|
|
348
357
|
return req;
|
|
349
358
|
};
|
|
350
359
|
}
|
|
351
|
-
isBrokerUrl(url) {
|
|
352
|
-
try {
|
|
353
|
-
const parsed = new URL(url);
|
|
354
|
-
return (parsed.hostname === "localhost" || parsed.hostname === "127.0.0.1") && parsed.port === "5200";
|
|
355
|
-
} catch {
|
|
356
|
-
return false;
|
|
357
|
-
}
|
|
358
|
-
}
|
|
359
360
|
};
|
|
360
361
|
|
|
361
362
|
// libs/shield-interceptor/src/interceptors/websocket.ts
|
|
@@ -398,14 +399,6 @@ var WebSocketInterceptor = class extends BaseInterceptor {
|
|
|
398
399
|
this.originalWebSocket = null;
|
|
399
400
|
this.installed = false;
|
|
400
401
|
}
|
|
401
|
-
isBrokerUrl(url) {
|
|
402
|
-
try {
|
|
403
|
-
const parsed = new URL(url);
|
|
404
|
-
return (parsed.hostname === "localhost" || parsed.hostname === "127.0.0.1") && parsed.port === "5200";
|
|
405
|
-
} catch {
|
|
406
|
-
return false;
|
|
407
|
-
}
|
|
408
|
-
}
|
|
409
402
|
};
|
|
410
403
|
|
|
411
404
|
// libs/shield-interceptor/src/client/sync-client.ts
|
|
@@ -1023,6 +1016,7 @@ var EventReporter = class _EventReporter {
|
|
|
1023
1016
|
this.client = options.client;
|
|
1024
1017
|
this.logLevel = options.logLevel;
|
|
1025
1018
|
this.flushInterval = setInterval(() => this.flush(), 5e3);
|
|
1019
|
+
this.flushInterval.unref();
|
|
1026
1020
|
}
|
|
1027
1021
|
/**
|
|
1028
1022
|
* Report an event
|
|
@@ -1174,7 +1168,8 @@ function installInterceptors(configOverrides) {
|
|
|
1174
1168
|
client,
|
|
1175
1169
|
policyEvaluator,
|
|
1176
1170
|
eventReporter,
|
|
1177
|
-
failOpen: config.failOpen
|
|
1171
|
+
failOpen: config.failOpen,
|
|
1172
|
+
brokerHttpPort: config.httpPort
|
|
1178
1173
|
});
|
|
1179
1174
|
installed.fetch.install();
|
|
1180
1175
|
log(config, "debug", "Installed fetch interceptor");
|
|
@@ -1184,7 +1179,8 @@ function installInterceptors(configOverrides) {
|
|
|
1184
1179
|
client,
|
|
1185
1180
|
policyEvaluator,
|
|
1186
1181
|
eventReporter,
|
|
1187
|
-
failOpen: config.failOpen
|
|
1182
|
+
failOpen: config.failOpen,
|
|
1183
|
+
brokerHttpPort: config.httpPort
|
|
1188
1184
|
});
|
|
1189
1185
|
installed.http.install();
|
|
1190
1186
|
log(config, "debug", "Installed http/https interceptor");
|
|
@@ -1194,7 +1190,8 @@ function installInterceptors(configOverrides) {
|
|
|
1194
1190
|
client,
|
|
1195
1191
|
policyEvaluator,
|
|
1196
1192
|
eventReporter,
|
|
1197
|
-
failOpen: config.failOpen
|
|
1193
|
+
failOpen: config.failOpen,
|
|
1194
|
+
brokerHttpPort: config.httpPort
|
|
1198
1195
|
});
|
|
1199
1196
|
installed.websocket.install();
|
|
1200
1197
|
log(config, "debug", "Installed WebSocket interceptor");
|
|
@@ -1204,7 +1201,8 @@ function installInterceptors(configOverrides) {
|
|
|
1204
1201
|
client,
|
|
1205
1202
|
policyEvaluator,
|
|
1206
1203
|
eventReporter,
|
|
1207
|
-
failOpen: config.failOpen
|
|
1204
|
+
failOpen: config.failOpen,
|
|
1205
|
+
brokerHttpPort: config.httpPort
|
|
1208
1206
|
});
|
|
1209
1207
|
installed.childProcess.install();
|
|
1210
1208
|
log(config, "debug", "Installed child_process interceptor");
|
|
@@ -1214,7 +1212,8 @@ function installInterceptors(configOverrides) {
|
|
|
1214
1212
|
client,
|
|
1215
1213
|
policyEvaluator,
|
|
1216
1214
|
eventReporter,
|
|
1217
|
-
failOpen: config.failOpen
|
|
1215
|
+
failOpen: config.failOpen,
|
|
1216
|
+
brokerHttpPort: config.httpPort
|
|
1218
1217
|
});
|
|
1219
1218
|
installed.fs.install();
|
|
1220
1219
|
log(config, "debug", "Installed fs interceptor");
|
package/installer.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"installer.d.ts","sourceRoot":"","sources":["../src/installer.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAOrD,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAiBtD;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,eAAe,CAAC,EAAE,OAAO,CAAC,iBAAiB,CAAC,GAC3C,IAAI,
|
|
1
|
+
{"version":3,"file":"installer.d.ts","sourceRoot":"","sources":["../src/installer.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAOrD,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAiBtD;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,eAAe,CAAC,EAAE,OAAO,CAAC,iBAAiB,CAAC,GAC3C,IAAI,CA6FN;AAED;;GAEG;AACH,wBAAgB,qBAAqB,IAAI,IAAI,CA6B5C;AAED;;GAEG;AACH,wBAAgB,WAAW,IAAI,OAAO,CAErC;AAED;;GAEG;AACH,wBAAgB,SAAS,IAAI,WAAW,GAAG,IAAI,CAE9C"}
|
package/interceptors/base.d.ts
CHANGED
|
@@ -11,6 +11,8 @@ export interface BaseInterceptorOptions {
|
|
|
11
11
|
policyEvaluator: PolicyEvaluator;
|
|
12
12
|
eventReporter: EventReporter;
|
|
13
13
|
failOpen: boolean;
|
|
14
|
+
/** HTTP port used by the broker (to skip interception of broker traffic) */
|
|
15
|
+
brokerHttpPort?: number;
|
|
14
16
|
}
|
|
15
17
|
export declare abstract class BaseInterceptor {
|
|
16
18
|
protected client: AsyncClient;
|
|
@@ -18,7 +20,12 @@ export declare abstract class BaseInterceptor {
|
|
|
18
20
|
protected eventReporter: EventReporter;
|
|
19
21
|
protected failOpen: boolean;
|
|
20
22
|
protected installed: boolean;
|
|
23
|
+
private brokerHttpPort;
|
|
21
24
|
constructor(options: BaseInterceptorOptions);
|
|
25
|
+
/**
|
|
26
|
+
* Check if a URL targets the broker or daemon (should not be intercepted)
|
|
27
|
+
*/
|
|
28
|
+
protected isBrokerUrl(url: string): boolean;
|
|
22
29
|
/**
|
|
23
30
|
* Install the interceptor
|
|
24
31
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../src/interceptors/base.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAG3D,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,WAAW,CAAC;IACpB,eAAe,EAAE,eAAe,CAAC;IACjC,aAAa,EAAE,aAAa,CAAC;IAC7B,QAAQ,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../src/interceptors/base.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAG3D,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,WAAW,CAAC;IACpB,eAAe,EAAE,eAAe,CAAC;IACjC,aAAa,EAAE,aAAa,CAAC;IAC7B,QAAQ,EAAE,OAAO,CAAC;IAClB,4EAA4E;IAC5E,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,8BAAsB,eAAe;IACnC,SAAS,CAAC,MAAM,EAAE,WAAW,CAAC;IAC9B,SAAS,CAAC,eAAe,EAAE,eAAe,CAAC;IAC3C,SAAS,CAAC,aAAa,EAAE,aAAa,CAAC;IACvC,SAAS,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC5B,SAAS,CAAC,SAAS,EAAE,OAAO,CAAS;IACrC,OAAO,CAAC,cAAc,CAAS;gBAEnB,OAAO,EAAE,sBAAsB;IAQ3C;;OAEG;IACH,SAAS,CAAC,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAa3C;;OAEG;IACH,QAAQ,CAAC,OAAO,IAAI,IAAI;IAExB;;OAEG;IACH,QAAQ,CAAC,SAAS,IAAI,IAAI;IAE1B;;OAEG;IACH,WAAW,IAAI,OAAO;IAItB;;OAEG;cACa,WAAW,CACzB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,IAAI,CAAC;IA0ChB;;OAEG;IACH,SAAS,CAAC,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;CAGvC"}
|
package/interceptors/fetch.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetch.d.ts","sourceRoot":"","sources":["../../src/interceptors/fetch.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,eAAe,EAAE,KAAK,sBAAsB,EAAE,MAAM,WAAW,CAAC;AAEzE,qBAAa,gBAAiB,SAAQ,eAAe;IACnD,OAAO,CAAC,aAAa,CAA6B;gBAEtC,OAAO,EAAE,sBAAsB;IAI3C,OAAO,IAAI,IAAI;IAYf,SAAS,IAAI,IAAI;YAQH,gBAAgB;
|
|
1
|
+
{"version":3,"file":"fetch.d.ts","sourceRoot":"","sources":["../../src/interceptors/fetch.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,eAAe,EAAE,KAAK,sBAAsB,EAAE,MAAM,WAAW,CAAC;AAEzE,qBAAa,gBAAiB,SAAQ,eAAe;IACnD,OAAO,CAAC,aAAa,CAA6B;gBAEtC,OAAO,EAAE,sBAAsB;IAI3C,OAAO,IAAI,IAAI;IAYf,SAAS,IAAI,IAAI;YAQH,gBAAgB;CA0F/B"}
|
package/interceptors/http.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../src/interceptors/http.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,eAAe,EAAE,KAAK,sBAAsB,EAAE,MAAM,WAAW,CAAC;AAQzE,qBAAa,eAAgB,SAAQ,eAAe;IAClD,OAAO,CAAC,mBAAmB,CAAoC;IAC/D,OAAO,CAAC,eAAe,CAAgC;IACvD,OAAO,CAAC,oBAAoB,CAAoC;IAChE,OAAO,CAAC,gBAAgB,CAAgC;gBAE5C,OAAO,EAAE,sBAAsB;IAI3C,OAAO,IAAI,IAAI;IAkBf,SAAS,IAAI,IAAI;IAuBjB,OAAO,CAAC,wBAAwB;IA0DhC,OAAO,CAAC,oBAAoB;
|
|
1
|
+
{"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../src/interceptors/http.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,eAAe,EAAE,KAAK,sBAAsB,EAAE,MAAM,WAAW,CAAC;AAQzE,qBAAa,eAAgB,SAAQ,eAAe;IAClD,OAAO,CAAC,mBAAmB,CAAoC;IAC/D,OAAO,CAAC,eAAe,CAAgC;IACvD,OAAO,CAAC,oBAAoB,CAAoC;IAChE,OAAO,CAAC,gBAAgB,CAAgC;gBAE5C,OAAO,EAAE,sBAAsB;IAI3C,OAAO,IAAI,IAAI;IAkBf,SAAS,IAAI,IAAI;IAuBjB,OAAO,CAAC,wBAAwB;IA0DhC,OAAO,CAAC,oBAAoB;CAoB7B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"websocket.d.ts","sourceRoot":"","sources":["../../src/interceptors/websocket.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,eAAe,EAAE,KAAK,sBAAsB,EAAE,MAAM,WAAW,CAAC;AAGzE,qBAAa,oBAAqB,SAAQ,eAAe;IACvD,OAAO,CAAC,iBAAiB,CAAiC;gBAE9C,OAAO,EAAE,sBAAsB;IAI3C,OAAO,IAAI,IAAI;IAiDf,SAAS,IAAI,IAAI;
|
|
1
|
+
{"version":3,"file":"websocket.d.ts","sourceRoot":"","sources":["../../src/interceptors/websocket.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,eAAe,EAAE,KAAK,sBAAsB,EAAE,MAAM,WAAW,CAAC;AAGzE,qBAAa,oBAAqB,SAAQ,eAAe;IACvD,OAAO,CAAC,iBAAiB,CAAiC;gBAE9C,OAAO,EAAE,sBAAsB;IAI3C,OAAO,IAAI,IAAI;IAiDf,SAAS,IAAI,IAAI;CAQlB"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@agenshield/interceptor",
|
|
3
|
-
"version": "0.4.
|
|
3
|
+
"version": "0.4.4",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "Node.js runtime interception via ESM loader and CJS preload",
|
|
6
6
|
"main": "./index.js",
|
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
},
|
|
26
26
|
"license": "MIT",
|
|
27
27
|
"dependencies": {
|
|
28
|
-
"@agenshield/ipc": "0.4.
|
|
28
|
+
"@agenshield/ipc": "0.4.4"
|
|
29
29
|
},
|
|
30
30
|
"devDependencies": {
|
|
31
31
|
"@types/node": "^24.0.0",
|
package/register.js
CHANGED
|
@@ -84,11 +84,28 @@ var BaseInterceptor = class {
|
|
|
84
84
|
eventReporter;
|
|
85
85
|
failOpen;
|
|
86
86
|
installed = false;
|
|
87
|
+
brokerHttpPort;
|
|
87
88
|
constructor(options) {
|
|
88
89
|
this.client = options.client;
|
|
89
90
|
this.policyEvaluator = options.policyEvaluator;
|
|
90
91
|
this.eventReporter = options.eventReporter;
|
|
91
92
|
this.failOpen = options.failOpen;
|
|
93
|
+
this.brokerHttpPort = options.brokerHttpPort ?? 5201;
|
|
94
|
+
}
|
|
95
|
+
/**
|
|
96
|
+
* Check if a URL targets the broker or daemon (should not be intercepted)
|
|
97
|
+
*/
|
|
98
|
+
isBrokerUrl(url) {
|
|
99
|
+
try {
|
|
100
|
+
const parsed = new URL(url);
|
|
101
|
+
if (parsed.hostname !== "localhost" && parsed.hostname !== "127.0.0.1") {
|
|
102
|
+
return false;
|
|
103
|
+
}
|
|
104
|
+
const port = parsed.port;
|
|
105
|
+
return port === String(this.brokerHttpPort) || port === "5200";
|
|
106
|
+
} catch {
|
|
107
|
+
return false;
|
|
108
|
+
}
|
|
92
109
|
}
|
|
93
110
|
/**
|
|
94
111
|
* Check if the interceptor is installed
|
|
@@ -223,14 +240,6 @@ var FetchInterceptor = class extends BaseInterceptor {
|
|
|
223
240
|
throw error;
|
|
224
241
|
}
|
|
225
242
|
}
|
|
226
|
-
isBrokerUrl(url) {
|
|
227
|
-
try {
|
|
228
|
-
const parsed = new URL(url);
|
|
229
|
-
return (parsed.hostname === "localhost" || parsed.hostname === "127.0.0.1") && parsed.port === "5200";
|
|
230
|
-
} catch {
|
|
231
|
-
return false;
|
|
232
|
-
}
|
|
233
|
-
}
|
|
234
243
|
};
|
|
235
244
|
|
|
236
245
|
// libs/shield-interceptor/src/interceptors/http.ts
|
|
@@ -323,14 +332,6 @@ var HttpInterceptor = class extends BaseInterceptor {
|
|
|
323
332
|
return req;
|
|
324
333
|
};
|
|
325
334
|
}
|
|
326
|
-
isBrokerUrl(url) {
|
|
327
|
-
try {
|
|
328
|
-
const parsed = new URL(url);
|
|
329
|
-
return (parsed.hostname === "localhost" || parsed.hostname === "127.0.0.1") && parsed.port === "5200";
|
|
330
|
-
} catch {
|
|
331
|
-
return false;
|
|
332
|
-
}
|
|
333
|
-
}
|
|
334
335
|
};
|
|
335
336
|
|
|
336
337
|
// libs/shield-interceptor/src/interceptors/websocket.ts
|
|
@@ -373,14 +374,6 @@ var WebSocketInterceptor = class extends BaseInterceptor {
|
|
|
373
374
|
this.originalWebSocket = null;
|
|
374
375
|
this.installed = false;
|
|
375
376
|
}
|
|
376
|
-
isBrokerUrl(url) {
|
|
377
|
-
try {
|
|
378
|
-
const parsed = new URL(url);
|
|
379
|
-
return (parsed.hostname === "localhost" || parsed.hostname === "127.0.0.1") && parsed.port === "5200";
|
|
380
|
-
} catch {
|
|
381
|
-
return false;
|
|
382
|
-
}
|
|
383
|
-
}
|
|
384
377
|
};
|
|
385
378
|
|
|
386
379
|
// libs/shield-interceptor/src/client/sync-client.ts
|
|
@@ -998,6 +991,7 @@ var EventReporter = class _EventReporter {
|
|
|
998
991
|
this.client = options.client;
|
|
999
992
|
this.logLevel = options.logLevel;
|
|
1000
993
|
this.flushInterval = setInterval(() => this.flush(), 5e3);
|
|
994
|
+
this.flushInterval.unref();
|
|
1001
995
|
}
|
|
1002
996
|
/**
|
|
1003
997
|
* Report an event
|
|
@@ -1149,7 +1143,8 @@ function installInterceptors(configOverrides) {
|
|
|
1149
1143
|
client,
|
|
1150
1144
|
policyEvaluator,
|
|
1151
1145
|
eventReporter,
|
|
1152
|
-
failOpen: config.failOpen
|
|
1146
|
+
failOpen: config.failOpen,
|
|
1147
|
+
brokerHttpPort: config.httpPort
|
|
1153
1148
|
});
|
|
1154
1149
|
installed.fetch.install();
|
|
1155
1150
|
log(config, "debug", "Installed fetch interceptor");
|
|
@@ -1159,7 +1154,8 @@ function installInterceptors(configOverrides) {
|
|
|
1159
1154
|
client,
|
|
1160
1155
|
policyEvaluator,
|
|
1161
1156
|
eventReporter,
|
|
1162
|
-
failOpen: config.failOpen
|
|
1157
|
+
failOpen: config.failOpen,
|
|
1158
|
+
brokerHttpPort: config.httpPort
|
|
1163
1159
|
});
|
|
1164
1160
|
installed.http.install();
|
|
1165
1161
|
log(config, "debug", "Installed http/https interceptor");
|
|
@@ -1169,7 +1165,8 @@ function installInterceptors(configOverrides) {
|
|
|
1169
1165
|
client,
|
|
1170
1166
|
policyEvaluator,
|
|
1171
1167
|
eventReporter,
|
|
1172
|
-
failOpen: config.failOpen
|
|
1168
|
+
failOpen: config.failOpen,
|
|
1169
|
+
brokerHttpPort: config.httpPort
|
|
1173
1170
|
});
|
|
1174
1171
|
installed.websocket.install();
|
|
1175
1172
|
log(config, "debug", "Installed WebSocket interceptor");
|
|
@@ -1179,7 +1176,8 @@ function installInterceptors(configOverrides) {
|
|
|
1179
1176
|
client,
|
|
1180
1177
|
policyEvaluator,
|
|
1181
1178
|
eventReporter,
|
|
1182
|
-
failOpen: config.failOpen
|
|
1179
|
+
failOpen: config.failOpen,
|
|
1180
|
+
brokerHttpPort: config.httpPort
|
|
1183
1181
|
});
|
|
1184
1182
|
installed.childProcess.install();
|
|
1185
1183
|
log(config, "debug", "Installed child_process interceptor");
|
|
@@ -1189,7 +1187,8 @@ function installInterceptors(configOverrides) {
|
|
|
1189
1187
|
client,
|
|
1190
1188
|
policyEvaluator,
|
|
1191
1189
|
eventReporter,
|
|
1192
|
-
failOpen: config.failOpen
|
|
1190
|
+
failOpen: config.failOpen,
|
|
1191
|
+
brokerHttpPort: config.httpPort
|
|
1193
1192
|
});
|
|
1194
1193
|
installed.fs.install();
|
|
1195
1194
|
log(config, "debug", "Installed fs interceptor");
|
package/require.js
CHANGED
|
@@ -84,11 +84,28 @@ var BaseInterceptor = class {
|
|
|
84
84
|
eventReporter;
|
|
85
85
|
failOpen;
|
|
86
86
|
installed = false;
|
|
87
|
+
brokerHttpPort;
|
|
87
88
|
constructor(options) {
|
|
88
89
|
this.client = options.client;
|
|
89
90
|
this.policyEvaluator = options.policyEvaluator;
|
|
90
91
|
this.eventReporter = options.eventReporter;
|
|
91
92
|
this.failOpen = options.failOpen;
|
|
93
|
+
this.brokerHttpPort = options.brokerHttpPort ?? 5201;
|
|
94
|
+
}
|
|
95
|
+
/**
|
|
96
|
+
* Check if a URL targets the broker or daemon (should not be intercepted)
|
|
97
|
+
*/
|
|
98
|
+
isBrokerUrl(url) {
|
|
99
|
+
try {
|
|
100
|
+
const parsed = new URL(url);
|
|
101
|
+
if (parsed.hostname !== "localhost" && parsed.hostname !== "127.0.0.1") {
|
|
102
|
+
return false;
|
|
103
|
+
}
|
|
104
|
+
const port = parsed.port;
|
|
105
|
+
return port === String(this.brokerHttpPort) || port === "5200";
|
|
106
|
+
} catch {
|
|
107
|
+
return false;
|
|
108
|
+
}
|
|
92
109
|
}
|
|
93
110
|
/**
|
|
94
111
|
* Check if the interceptor is installed
|
|
@@ -223,14 +240,6 @@ var FetchInterceptor = class extends BaseInterceptor {
|
|
|
223
240
|
throw error;
|
|
224
241
|
}
|
|
225
242
|
}
|
|
226
|
-
isBrokerUrl(url) {
|
|
227
|
-
try {
|
|
228
|
-
const parsed = new URL(url);
|
|
229
|
-
return (parsed.hostname === "localhost" || parsed.hostname === "127.0.0.1") && parsed.port === "5200";
|
|
230
|
-
} catch {
|
|
231
|
-
return false;
|
|
232
|
-
}
|
|
233
|
-
}
|
|
234
243
|
};
|
|
235
244
|
|
|
236
245
|
// libs/shield-interceptor/src/interceptors/http.ts
|
|
@@ -323,14 +332,6 @@ var HttpInterceptor = class extends BaseInterceptor {
|
|
|
323
332
|
return req;
|
|
324
333
|
};
|
|
325
334
|
}
|
|
326
|
-
isBrokerUrl(url) {
|
|
327
|
-
try {
|
|
328
|
-
const parsed = new URL(url);
|
|
329
|
-
return (parsed.hostname === "localhost" || parsed.hostname === "127.0.0.1") && parsed.port === "5200";
|
|
330
|
-
} catch {
|
|
331
|
-
return false;
|
|
332
|
-
}
|
|
333
|
-
}
|
|
334
335
|
};
|
|
335
336
|
|
|
336
337
|
// libs/shield-interceptor/src/interceptors/websocket.ts
|
|
@@ -373,14 +374,6 @@ var WebSocketInterceptor = class extends BaseInterceptor {
|
|
|
373
374
|
this.originalWebSocket = null;
|
|
374
375
|
this.installed = false;
|
|
375
376
|
}
|
|
376
|
-
isBrokerUrl(url) {
|
|
377
|
-
try {
|
|
378
|
-
const parsed = new URL(url);
|
|
379
|
-
return (parsed.hostname === "localhost" || parsed.hostname === "127.0.0.1") && parsed.port === "5200";
|
|
380
|
-
} catch {
|
|
381
|
-
return false;
|
|
382
|
-
}
|
|
383
|
-
}
|
|
384
377
|
};
|
|
385
378
|
|
|
386
379
|
// libs/shield-interceptor/src/client/sync-client.ts
|
|
@@ -998,6 +991,7 @@ var EventReporter = class _EventReporter {
|
|
|
998
991
|
this.client = options.client;
|
|
999
992
|
this.logLevel = options.logLevel;
|
|
1000
993
|
this.flushInterval = setInterval(() => this.flush(), 5e3);
|
|
994
|
+
this.flushInterval.unref();
|
|
1001
995
|
}
|
|
1002
996
|
/**
|
|
1003
997
|
* Report an event
|
|
@@ -1149,7 +1143,8 @@ function installInterceptors(configOverrides) {
|
|
|
1149
1143
|
client,
|
|
1150
1144
|
policyEvaluator,
|
|
1151
1145
|
eventReporter,
|
|
1152
|
-
failOpen: config.failOpen
|
|
1146
|
+
failOpen: config.failOpen,
|
|
1147
|
+
brokerHttpPort: config.httpPort
|
|
1153
1148
|
});
|
|
1154
1149
|
installed.fetch.install();
|
|
1155
1150
|
log(config, "debug", "Installed fetch interceptor");
|
|
@@ -1159,7 +1154,8 @@ function installInterceptors(configOverrides) {
|
|
|
1159
1154
|
client,
|
|
1160
1155
|
policyEvaluator,
|
|
1161
1156
|
eventReporter,
|
|
1162
|
-
failOpen: config.failOpen
|
|
1157
|
+
failOpen: config.failOpen,
|
|
1158
|
+
brokerHttpPort: config.httpPort
|
|
1163
1159
|
});
|
|
1164
1160
|
installed.http.install();
|
|
1165
1161
|
log(config, "debug", "Installed http/https interceptor");
|
|
@@ -1169,7 +1165,8 @@ function installInterceptors(configOverrides) {
|
|
|
1169
1165
|
client,
|
|
1170
1166
|
policyEvaluator,
|
|
1171
1167
|
eventReporter,
|
|
1172
|
-
failOpen: config.failOpen
|
|
1168
|
+
failOpen: config.failOpen,
|
|
1169
|
+
brokerHttpPort: config.httpPort
|
|
1173
1170
|
});
|
|
1174
1171
|
installed.websocket.install();
|
|
1175
1172
|
log(config, "debug", "Installed WebSocket interceptor");
|
|
@@ -1179,7 +1176,8 @@ function installInterceptors(configOverrides) {
|
|
|
1179
1176
|
client,
|
|
1180
1177
|
policyEvaluator,
|
|
1181
1178
|
eventReporter,
|
|
1182
|
-
failOpen: config.failOpen
|
|
1179
|
+
failOpen: config.failOpen,
|
|
1180
|
+
brokerHttpPort: config.httpPort
|
|
1183
1181
|
});
|
|
1184
1182
|
installed.childProcess.install();
|
|
1185
1183
|
log(config, "debug", "Installed child_process interceptor");
|
|
@@ -1189,7 +1187,8 @@ function installInterceptors(configOverrides) {
|
|
|
1189
1187
|
client,
|
|
1190
1188
|
policyEvaluator,
|
|
1191
1189
|
eventReporter,
|
|
1192
|
-
failOpen: config.failOpen
|
|
1190
|
+
failOpen: config.failOpen,
|
|
1191
|
+
brokerHttpPort: config.httpPort
|
|
1193
1192
|
});
|
|
1194
1193
|
installed.fs.install();
|
|
1195
1194
|
log(config, "debug", "Installed fs interceptor");
|