@open-rlb/nestjs-amqp 2.0.11 → 2.0.13

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.
Files changed (43) hide show
  1. package/common/errors.d.ts +2 -1
  2. package/common/errors.js +2 -1
  3. package/common/errors.js.map +1 -1
  4. package/modules/broker/const.d.ts +1 -0
  5. package/modules/broker/const.js +2 -1
  6. package/modules/broker/const.js.map +1 -1
  7. package/modules/gateway-admin/repository/http-path.repository.d.ts +1 -0
  8. package/modules/gateway-admin/repository/http-path.repository.js.map +1 -1
  9. package/modules/gateway-admin/services/gateway-auth.service.d.ts +4 -2
  10. package/modules/gateway-admin/services/gateway-auth.service.js +18 -4
  11. package/modules/gateway-admin/services/gateway-auth.service.js.map +1 -1
  12. package/modules/gateway-admin/services/gateway-path.service.d.ts +4 -1
  13. package/modules/gateway-admin/services/gateway-path.service.js +22 -8
  14. package/modules/gateway-admin/services/gateway-path.service.js.map +1 -1
  15. package/modules/gateway-admin/services/route-sync.service.js +4 -0
  16. package/modules/gateway-admin/services/route-sync.service.js.map +1 -1
  17. package/modules/gateway-admin/util/route-diff.js +7 -3
  18. package/modules/gateway-admin/util/route-diff.js.map +1 -1
  19. package/modules/gateway-admin/util/route-manifest.d.ts +2 -0
  20. package/modules/gateway-admin/util/route-manifest.js +14 -0
  21. package/modules/gateway-admin/util/route-manifest.js.map +1 -1
  22. package/modules/proxy/index.d.ts +1 -0
  23. package/modules/proxy/index.js +1 -0
  24. package/modules/proxy/index.js.map +1 -1
  25. package/modules/proxy/proxy.module.js +3 -2
  26. package/modules/proxy/proxy.module.js.map +1 -1
  27. package/modules/proxy/services/auth-provider-registry.service.d.ts +17 -0
  28. package/modules/proxy/services/auth-provider-registry.service.js +67 -0
  29. package/modules/proxy/services/auth-provider-registry.service.js.map +1 -0
  30. package/modules/proxy/services/http-auth-handler.service.d.ts +3 -2
  31. package/modules/proxy/services/http-auth-handler.service.js +8 -8
  32. package/modules/proxy/services/http-auth-handler.service.js.map +1 -1
  33. package/modules/proxy/services/http-handler.service.d.ts +3 -1
  34. package/modules/proxy/services/http-handler.service.js +21 -9
  35. package/modules/proxy/services/http-handler.service.js.map +1 -1
  36. package/modules/proxy/services/jwt.service.d.ts +2 -0
  37. package/modules/proxy/services/jwt.service.js +25 -12
  38. package/modules/proxy/services/jwt.service.js.map +1 -1
  39. package/package.json +1 -1
  40. package/schematics/nest-add/files/skills/rlb-amqp-gateway-admin/SKILL.md +41 -12
  41. package/schematics/nest-add/index.js +17 -6
  42. package/schematics/nest-add/index.js.map +1 -1
  43. package/schematics/nest-add/index.ts +14 -6
@@ -15,13 +15,13 @@ var HttpAuthHandlerService_1;
15
15
  Object.defineProperty(exports, "__esModule", { value: true });
16
16
  exports.HttpAuthHandlerService = void 0;
17
17
  const common_1 = require("@nestjs/common");
18
- const const_1 = require("../../broker/const");
18
+ const auth_provider_registry_service_1 = require("./auth-provider-registry.service");
19
19
  const acl_service_1 = require("./acl.service");
20
20
  const jwt_service_1 = require("./jwt.service");
21
21
  let HttpAuthHandlerService = HttpAuthHandlerService_1 = class HttpAuthHandlerService {
22
- constructor(aclRoleService, authProviders, jwtService) {
22
+ constructor(aclRoleService, registry, jwtService) {
23
23
  this.aclRoleService = aclRoleService;
24
- this.authProviders = authProviders;
24
+ this.registry = registry;
25
25
  this.jwtService = jwtService;
26
26
  this.logger = new common_1.Logger(HttpAuthHandlerService_1.name);
27
27
  }
@@ -29,7 +29,7 @@ let HttpAuthHandlerService = HttpAuthHandlerService_1 = class HttpAuthHandlerSer
29
29
  let out = { success: false };
30
30
  if (!path?.auth)
31
31
  return out;
32
- const authConfig = this.authProviders.find(o => o.name === path.auth);
32
+ const authConfig = this.registry.find(path.auth);
33
33
  if (!authConfig) {
34
34
  this.logger.error(`Auth provider '${path.auth}' referenced by path '${path.name || path.path}' is not configured; denying request (401).`);
35
35
  return out;
@@ -53,7 +53,7 @@ let HttpAuthHandlerService = HttpAuthHandlerService_1 = class HttpAuthHandlerSer
53
53
  return out;
54
54
  }
55
55
  findProvider(name) {
56
- return this.authProviders.find(o => o.name === name);
56
+ return this.registry.find(name);
57
57
  }
58
58
  async verifyToken(authConfig, token) {
59
59
  if (!token)
@@ -159,7 +159,7 @@ let HttpAuthHandlerService = HttpAuthHandlerService_1 = class HttpAuthHandlerSer
159
159
  return true;
160
160
  if (!path?.auth)
161
161
  return false;
162
- const authConfig = this.authProviders.find(o => o.name === path.auth);
162
+ const authConfig = this.registry.find(path.auth);
163
163
  if (!authConfig) {
164
164
  this.logger.error(`Path '${path.name || path.path}' references unknown auth provider '${path.auth}' → denying authorization check.`);
165
165
  return false;
@@ -172,7 +172,7 @@ exports.HttpAuthHandlerService = HttpAuthHandlerService = HttpAuthHandlerService
172
172
  (0, common_1.Injectable)(),
173
173
  __param(0, (0, common_1.Optional)()),
174
174
  __param(0, (0, common_1.Inject)(acl_service_1.RLB_GTW_ACL_ROLE_SERVICE)),
175
- __param(1, (0, common_1.Inject)(const_1.RLB_AMQP_AUTH_OPTIONS)),
176
- __metadata("design:paramtypes", [Object, Array, jwt_service_1.JwtService])
175
+ __metadata("design:paramtypes", [Object, auth_provider_registry_service_1.AuthProviderRegistry,
176
+ jwt_service_1.JwtService])
177
177
  ], HttpAuthHandlerService);
178
178
  //# sourceMappingURL=http-auth-handler.service.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"http-auth-handler.service.js","sourceRoot":"","sources":["../../../../libs/rlb-nestjs-amqp/src/modules/proxy/services/http-auth-handler.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"http-auth-handler.service.js","sourceRoot":"","sources":["../../../../libs/rlb-nestjs-amqp/src/modules/proxy/services/http-auth-handler.service.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,7 @@ import { Router } from "express";
4
4
  import { BrokerService } from "../../broker";
5
5
  import { AppConfig, UtilsService } from "../../broker/services/utils.service";
6
6
  import { GatewayConfig, PathDefinition } from "../config/path-definition.config";
7
+ import { AuthProviderRegistry } from "./auth-provider-registry.service";
7
8
  import { HttpAuthHandlerService } from "./http-auth-handler.service";
8
9
  import { GatewayMetricsHook } from "./metrics-hook";
9
10
  export declare class HttpHandlerService implements OnModuleInit {
@@ -11,6 +12,7 @@ export declare class HttpHandlerService implements OnModuleInit {
11
12
  private readonly broker;
12
13
  private readonly utils;
13
14
  private readonly httpAuthHandlerService;
15
+ private readonly authRegistry;
14
16
  private readonly appConfig;
15
17
  private readonly gatewayConfig;
16
18
  private readonly metricsHook?;
@@ -20,7 +22,7 @@ export declare class HttpHandlerService implements OnModuleInit {
20
22
  private reloadPending;
21
23
  private readonly logger;
22
24
  private readonly multer;
23
- constructor(httpAdapterHost: HttpAdapterHost, broker: BrokerService, utils: UtilsService, httpAuthHandlerService: HttpAuthHandlerService, appConfig: AppConfig, gatewayConfig: GatewayConfig, metricsHook?: GatewayMetricsHook);
25
+ constructor(httpAdapterHost: HttpAdapterHost, broker: BrokerService, utils: UtilsService, httpAuthHandlerService: HttpAuthHandlerService, authRegistry: AuthProviderRegistry, appConfig: AppConfig, gatewayConfig: GatewayConfig, metricsHook?: GatewayMetricsHook);
24
26
  onModuleInit(): Promise<void>;
25
27
  reload(): Promise<number>;
26
28
  private doReload;
@@ -20,6 +20,7 @@ const express_1 = require("express");
20
20
  const broker_1 = require("../../broker");
21
21
  const const_1 = require("../../broker/const");
22
22
  const utils_service_1 = require("../../broker/services/utils.service");
23
+ const auth_provider_registry_service_1 = require("./auth-provider-registry.service");
23
24
  const http_auth_handler_service_1 = require("./http-auth-handler.service");
24
25
  const metrics_hook_1 = require("./metrics-hook");
25
26
  const multer = require("multer");
@@ -32,11 +33,12 @@ const ERROR_STATUS = {
32
33
  ConflictError: 409,
33
34
  };
34
35
  let HttpHandlerService = HttpHandlerService_1 = class HttpHandlerService {
35
- constructor(httpAdapterHost, broker, utils, httpAuthHandlerService, appConfig, gatewayConfig, metricsHook) {
36
+ constructor(httpAdapterHost, broker, utils, httpAuthHandlerService, authRegistry, appConfig, gatewayConfig, metricsHook) {
36
37
  this.httpAdapterHost = httpAdapterHost;
37
38
  this.broker = broker;
38
39
  this.utils = utils;
39
40
  this.httpAuthHandlerService = httpAuthHandlerService;
41
+ this.authRegistry = authRegistry;
40
42
  this.appConfig = appConfig;
41
43
  this.gatewayConfig = gatewayConfig;
42
44
  this.metricsHook = metricsHook;
@@ -55,13 +57,20 @@ let HttpHandlerService = HttpHandlerService_1 = class HttpHandlerService {
55
57
  return this.dynamicRouter(req, res, next);
56
58
  next();
57
59
  });
60
+ await this.authRegistry.reload();
58
61
  await this.reload();
59
62
  const reloadTopic = this.gatewayConfig.reloadTopic;
60
63
  if (reloadTopic) {
61
64
  try {
62
65
  await this.broker.registerHandler(reloadTopic, async (msg) => {
63
- if (msg?.action && msg.action !== const_1.GW_RELOAD_ACTION) {
64
- this.logger.debug(`[RELOAD] ignoring control message '${msg.action}' (not '${const_1.GW_RELOAD_ACTION}')`);
66
+ const action = msg?.action;
67
+ if (action === const_1.GW_AUTH_RELOAD_ACTION) {
68
+ this.logger.log(`[RELOAD] '${const_1.GW_AUTH_RELOAD_ACTION}' received on '${reloadTopic}' — reloading auth-providers into RAM`);
69
+ await this.authRegistry.reload();
70
+ return;
71
+ }
72
+ if (action && action !== const_1.GW_RELOAD_ACTION) {
73
+ this.logger.debug(`[RELOAD] ignoring control message '${action}' (not '${const_1.GW_RELOAD_ACTION}'/'${const_1.GW_AUTH_RELOAD_ACTION}')`);
65
74
  return;
66
75
  }
67
76
  this.logger.log(`[RELOAD] '${const_1.GW_RELOAD_ACTION}' received on '${reloadTopic}' — rebuilding routes`);
@@ -288,7 +297,9 @@ let HttpHandlerService = HttpHandlerService_1 = class HttpHandlerService {
288
297
  const statusCode = statusCodeOverride ?? ERROR_STATUS[code] ?? 500;
289
298
  const message = typeof error === 'string' ? error : (error?.message ?? 'Internal server error');
290
299
  const body = { statusCode, code, message };
291
- if (this.appConfig.environment !== 'production' && error?.stack)
300
+ if (error?.details !== undefined)
301
+ body.details = error.details;
302
+ else if (this.appConfig.environment !== 'production' && error?.stack)
292
303
  body.details = error.stack;
293
304
  res.__errorCode = code;
294
305
  res.status(statusCode).json(body);
@@ -315,13 +326,14 @@ let HttpHandlerService = HttpHandlerService_1 = class HttpHandlerService {
315
326
  exports.HttpHandlerService = HttpHandlerService;
316
327
  exports.HttpHandlerService = HttpHandlerService = HttpHandlerService_1 = __decorate([
317
328
  (0, common_1.Injectable)(),
318
- __param(4, (0, common_1.Inject)(const_1.RLB_AMQP_APP_OPTIONS)),
319
- __param(5, (0, common_1.Inject)(const_1.RLB_AMQP_GATEWAY_OPTIONS)),
320
- __param(6, (0, common_1.Optional)()),
321
- __param(6, (0, common_1.Inject)(metrics_hook_1.RLB_GTW_METRICS_HOOK)),
329
+ __param(5, (0, common_1.Inject)(const_1.RLB_AMQP_APP_OPTIONS)),
330
+ __param(6, (0, common_1.Inject)(const_1.RLB_AMQP_GATEWAY_OPTIONS)),
331
+ __param(7, (0, common_1.Optional)()),
332
+ __param(7, (0, common_1.Inject)(metrics_hook_1.RLB_GTW_METRICS_HOOK)),
322
333
  __metadata("design:paramtypes", [core_1.HttpAdapterHost,
323
334
  broker_1.BrokerService,
324
335
  utils_service_1.UtilsService,
325
- http_auth_handler_service_1.HttpAuthHandlerService, Object, Object, Object])
336
+ http_auth_handler_service_1.HttpAuthHandlerService,
337
+ auth_provider_registry_service_1.AuthProviderRegistry, Object, Object, Object])
326
338
  ], HttpHandlerService);
327
339
  //# sourceMappingURL=http-handler.service.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"http-handler.service.js","sourceRoot":"","sources":["../../../../libs/rlb-nestjs-amqp/src/modules/proxy/services/http-handler.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAoF;AACpF,uCAA+C;AAE/C,qCAAkE;AAClE,yCAA6C;AAC7C,8CAAsG;AACtG,uEAA8E;AAE9E,2EAAqE;AACrE,iDAA8F;AAC9F,iCAAkC;AAGlC,MAAM,YAAY,GAA2B;IAC3C,eAAe,EAAE,GAAG;IACpB,mBAAmB,EAAE,GAAG;IACxB,iBAAiB,EAAE,GAAG;IACtB,cAAc,EAAE,GAAG;IACnB,aAAa,EAAE,GAAG;IAClB,aAAa,EAAE,GAAG;CACnB,CAAC;AAGK,IAAM,kBAAkB,0BAAxB,MAAM,kBAAkB;IAgB7B,YACmB,eAAgC,EAChC,MAAqB,EACrB,KAAmB,EACnB,sBAA8C,EACjC,SAAqC,EACjC,aAA6C,EACrC,WAAiD;QAN1E,oBAAe,GAAf,eAAe,CAAiB;QAChC,WAAM,GAAN,MAAM,CAAe;QACrB,UAAK,GAAL,KAAK,CAAc;QACnB,2BAAsB,GAAtB,sBAAsB,CAAwB;QAChB,cAAS,GAAT,SAAS,CAAW;QAChB,kBAAa,GAAb,aAAa,CAAe;QACpB,gBAAW,GAAX,WAAW,CAAqB;QAlBrF,kBAAa,GAAkB,IAAI,CAAC;QAKpC,mBAAc,GAAG,KAAK,CAAC;QACvB,kBAAa,GAAG,KAAK,CAAC;QAc5B,IAAI,CAAC,MAAM,GAAG,IAAI,eAAM,CAAC,oBAAkB,CAAC,IAAI,CAAC,CAAC;QAClD,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;YACnB,OAAO,EAAE,MAAM,CAAC,aAAa,EAAE;SAChC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,YAAY;QAChB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,WAAW,EAAkB,CAAC;QAI7E,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,GAAY,EAAE,GAAa,EAAE,IAAkB,EAAE,EAAE;YAClE,IAAI,IAAI,CAAC,aAAa;gBAAE,OAAO,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;YAClE,IAAI,EAAE,CAAC;QACT,CAAC,CAAC,CAAC;QACH,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;QAIpB,MAAM,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC;QACnD,IAAI,WAAW,EAAE,CAAC;YAChB,IAAI,CAAC;gBACH,MAAM,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,WAAW,EAAE,KAAK,EAAE,GAAQ,EAAE,EAAE;oBAIhE,IAAI,GAAG,EAAE,MAAM,IAAI,GAAG,CAAC,MAAM,KAAK,wBAAgB,EAAE,CAAC;wBACnD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,sCAAsC,GAAG,CAAC,MAAM,WAAW,wBAAgB,IAAI,CAAC,CAAC;wBACnG,OAAO;oBACT,CAAC;oBACD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,aAAa,wBAAgB,kBAAkB,WAAW,uBAAuB,CAAC,CAAC;oBACnG,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;gBACtB,CAAC,CAAC,CAAC;gBACH,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,2BAA2B,wBAAgB,uBAAuB,WAAW,GAAG,CAAC,CAAC;YACpG,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,iDAAiD,WAAW,MAAM,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;YACvG,CAAC;QACH,CAAC;IACH,CAAC;IAOD,KAAK,CAAC,MAAM;QACV,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YAAC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;YAAC,OAAO,CAAC,CAAC,CAAC;QAAC,CAAC;QAClE,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAC3B,IAAI,MAAM,GAAG,CAAC,CAAC;QACf,IAAI,CAAC;YACH,GAAG,CAAC;gBACF,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;gBAC3B,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;YACjC,CAAC,QAAQ,IAAI,CAAC,aAAa,EAAE;QAC/B,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC;QAC9B,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAQO,KAAK,CAAC,QAAQ;QACpB,MAAM,OAAO,GAAqB,EAAE,CAAC;QACrC,IAAI,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,KAAK,EAAE,CAAC;YACzC,IAAI,CAAC;gBACH,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;gBACnI,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;oBAAE,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;YAC3C,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,qCAAqC,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK,IAAI,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,KAAK,CAAC,MAAM,MAAM,KAAK,EAAE,OAAO,4BAA4B,CAAC,CAAC;YACjM,CAAC;QACH,CAAC;QACD,MAAM,KAAK,GAAG,CAAC,GAAG,IAAI,CAAC,aAAa,EAAE,KAAK,IAAI,EAAE,EAAE,GAAG,OAAO,CAAC,CAAC;QAC/D,MAAM,MAAM,GAAG,IAAA,gBAAM,GAAE,CAAC;QACxB,IAAI,EAAE,GAAG,CAAC,CAAC;QACX,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,IAAI,CAAC;gBACH,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;gBAChC,EAAE,EAAE,CAAC;YACP,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,mCAAmC,IAAI,EAAE,IAAI,IAAI,IAAI,EAAE,IAAI,MAAM,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;YACvG,CAAC;QACH,CAAC;QACD,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC;QAC5B,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,0BAA0B,EAAE,IAAI,KAAK,CAAC,MAAM,UAAU,IAAI,CAAC,aAAa,EAAE,KAAK,EAAE,MAAM,IAAI,CAAC,QAAQ,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;QACvI,OAAO,EAAE,CAAC;IACZ,CAAC;IAQD,YAAY,CAAC,IAAoB,EAAE,MAAe;QAChD,IAAI,CAAC,IAAI,CAAC,MAAM;YAAE,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;QAC5E,IAAI,CAAC,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;QACxE,IAAI,CAAC,IAAI,CAAC,KAAK;YAAE,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;QAC1E,IAAI,CAAC,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;QAGxE,IAAI,IAAI,CAAC,OAAO,EAAE,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YACvC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,qKAAqK,CAAC,CAAC;QACzN,CAAC;QAID,IAAI,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,sBAAsB,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YACtE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,uCAAuC,IAAI,CAAC,IAAI,2DAA2D,CAAC,CAAC;QAChK,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,aAAa,IAAI,CAAC,IAAI,CAAC,aAAa,GAAG,IAAA,gBAAM,GAAE,CAAC,CAAC,CAAC;QACjF,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,GAAY,EAAE,GAAa,EAAE,EAAE;YAIpG,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;YAOlC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,eAAe,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;YAE9E,IAAI,IAAI,CAAC,cAAc,KAAK,IAAI,EAAE,CAAC;gBAEjC,IAAI,IAAI,CAAC,IAAI,IAAI,CAAC,QAAQ,EAAE,OAAO,EAAE,CAAC;oBACpC,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE,OAAO,EAAE,cAAc,EAAE,EAAE,GAAG,CAAC,CAAC;oBAC5E,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,IAAI,CAAC,IAAI,QAAQ,IAAI,CAAC,KAAK,uBAAuB,CAAC,CAAC;oBACrI,OAAO;gBACT,CAAC;gBAGD,MAAM,WAAW,GAAG,IAAI,CAAC,sBAAsB,CAAC,sBAAsB,CAAC,GAAG,CAAC,CAAC;gBAC5E,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,sBAAsB,CAAC,YAAY,CAAC,QAAQ,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC,EAAE,CAAC;oBACnF,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,WAAW,EAAE,EAAE,GAAG,CAAC,CAAC;oBACtE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,IAAI,CAAC,IAAI,QAAQ,IAAI,CAAC,KAAK,oBAAoB,CAAC,CAAC;oBAClI,OAAO;gBACT,CAAC;YACH,CAAC;YAOD,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,GAAG,WAAW,EAAE,GAAG,QAAQ,IAAI,EAAE,CAAC;YACjE,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;YAEhD,IAAI,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC;YAClD,IAAI,IAAI,CAAC,UAAU,KAAK,MAAM,EAAE,CAAC;gBAC/B,IAAI,GAAG,EAAE,GAAG,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC,EAAE,CAAC;YAChD,CAAC;iBAAM,IAAI,IAAI,CAAC,UAAU,KAAK,OAAO,EAAE,CAAC;gBACvC,IAAI,GAAG,EAAE,GAAG,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC,EAAE,CAAC;YACjD,CAAC;iBAAM,IAAI,IAAI,CAAC,UAAU,KAAK,QAAQ,EAAE,CAAC;gBACxC,IAAI,GAAG,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC;YAC1B,CAAC;iBAAM,IAAI,IAAI,CAAC,UAAU,KAAK,YAAY,EAAE,CAAC;gBAC5C,IAAI,GAAG,EAAE,GAAG,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC,EAAE,CAAC;YACtE,CAAC;iBAAM,IAAI,IAAI,CAAC,UAAU,KAAK,YAAY,EAAE,CAAC;gBAC5C,IAAI,GAAG,EAAE,GAAG,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC,EAAE,CAAC;YACtE,CAAC;iBAAM,CAAC;gBACN,IAAI,GAAG,EAAE,GAAG,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC,EAAE,CAAC;YACtE,CAAC;YACD,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAClB,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,IAAI,EAAG,GAAW,CAAC,OAAO,EAAE,CAAC,CAAC;YACtD,CAAC;YACD,IAAI,GAAG,CAAC,KAAK,EAAE,CAAC;gBACd,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC;YAC7C,CAAC;YACD,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;YAChC,IAAI,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACnB,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;oBAClC,MAAM,CAAC,GAAW,IAAI,CAAC,MAAM,CAAC;oBAC9B,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;gBACrC,CAAC;YACH,CAAC;YACD,MAAM,OAAO,GAAG,IAAI,GAAG,EAAsC,CAAC;YAC9D,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;gBACjB,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;oBAC/B,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;gBACtC,CAAC;YACH,CAAC;YACD,IAAI,CAAC;gBACH,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;oBAC1B,IAAI,CAAC;wBAGH,MAAM,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE,GAAG,WAAW,EAAE,GAAG,WAAW,EAAE,cAAc,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;wBACzJ,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,iBAAiB,IAAI,GAAG,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,CAAC;wBACpE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,IAAI,CAAC,IAAI,QAAQ,IAAI,CAAC,KAAK,sBAAsB,CAAC,CAAC;oBACrI,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBACf,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;wBAChC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,IAAI,CAAC,IAAI,QAAQ,IAAI,CAAC,KAAK,aAAa,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;oBAC1J,CAAC;gBACH,CAAC;qBAAM,IAAI,IAAI,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;oBAC/B,IAAI,CAAC;wBACH,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE,GAAG,WAAW,EAAE,GAAG,WAAW,EAAE,cAAc,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;wBAIjL,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;4BACxC,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;gCAClB,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;gCAClC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,IAAI,CAAC,IAAI,QAAQ,IAAI,CAAC,KAAK,gBAAgB,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC;gCAC7I,OAAO;4BACT,CAAC;4BACD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;gCAAE,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,kBAAkB,CAAC,CAAC;4BAClF,IAAI,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;gCAC5D,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,iBAAiB,IAAI,GAAG,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gCACzE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,IAAI,CAAC,IAAI,QAAQ,IAAI,CAAC,KAAK,qBAAqB,CAAC,CAAC;gCAClI,OAAO;4BACT,CAAC;4BACD,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;gCAChB,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,iBAAiB,IAAI,GAAG,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,QAAQ,CAAC,CAAC,CAAC;4BAC5G,CAAC;iCAAM,CAAC;gCACN,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,iBAAiB,IAAI,GAAG,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;4BAC1E,CAAC;4BACD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,IAAI,CAAC,IAAI,QAAQ,IAAI,CAAC,KAAK,oBAAoB,CAAC,CAAC;4BACjI,OAAO;wBACT,CAAC;wBACD,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,iBAAiB,IAAI,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC;wBAChD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,IAAI,CAAC,IAAI,QAAQ,IAAI,CAAC,KAAK,2BAA2B,CAAC,CAAC;wBACxI,OAAO;oBACT,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBACf,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;wBAC3B,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,IAAI,CAAC,IAAI,QAAQ,IAAI,CAAC,KAAK,aAAa,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;oBAC1J,CAAC;gBACH,CAAC;qBACI,CAAC;oBACJ,MAAM,IAAI,KAAK,CAAC,iBAAiB,IAAI,CAAC,IAAI,uBAAuB,CAAC,CAAC;gBACrE,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,IAAI,CAAC,IAAI,QAAQ,IAAI,CAAC,KAAK,aAAa,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;gBAC1J,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;YAC7B,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IASO,YAAY,CAAC,GAAY,EAAE,GAAa,EAAE,IAAoB;QACpE,MAAM,IAAI,GAAG,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC;QACxC,MAAM,aAAa,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,IAAI,IAAI,EAAE,MAAM,CAAC,CAAC;QACtD,IAAI,CAAC,aAAa,IAAI,CAAC,IAAI,CAAC,WAAW;YAAE,OAAO;QAChD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC7B,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,EAAE;YACtB,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAC9B,MAAM,KAAK,GAAuB;gBAChC,EAAE,EAAE,UAAU;gBACd,MAAM,EAAE,GAAG,CAAC,MAAM;gBAClB,KAAK,EAAE,IAAI,CAAC,IAAI;gBAChB,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,MAAM,EAAE,GAAG,CAAC,UAAU;gBACtB,UAAU,EAAE,UAAU,GAAG,SAAS;gBAClC,IAAI,EAAG,GAAW,CAAC,WAAW;aAC/B,CAAC;YAEF,IAAI,aAAa,EAAE,CAAC;gBAClB,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC;qBACvD,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,sCAAsC,IAAI,CAAC,IAAI,MAAM,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC;YAChH,CAAC;YAED,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;gBACrB,IAAI,CAAC;oBACH,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;yBAC3C,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,8BAA8B,IAAI,CAAC,IAAI,MAAM,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC;gBACxG,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,6BAA6B,IAAI,CAAC,IAAI,MAAO,KAAe,EAAE,OAAO,EAAE,CAAC,CAAC;gBAC7F,CAAC;YACH,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAQO,SAAS,CAAC,GAAa,EAAE,KAAU,EAAE,kBAA2B;QACtE,MAAM,IAAI,GAAG,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;QAC/F,MAAM,UAAU,GAAG,kBAAkB,IAAI,YAAY,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC;QACnE,MAAM,OAAO,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,OAAO,IAAI,uBAAuB,CAAC,CAAC;QAChG,MAAM,IAAI,GAA6E,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;QACrH,IAAI,IAAI,CAAC,SAAS,CAAC,WAAW,KAAK,YAAY,IAAI,KAAK,EAAE,KAAK;YAAE,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC;QAC3F,GAAW,CAAC,WAAW,GAAG,IAAI,CAAC;QAChC,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACpC,CAAC;IAEO,WAAW,CAAC,GAAY,EAAE,IAAoB;QACpD,MAAM,IAAI,GAAiD,EAAE,CAAC;QAC9D,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACxB,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;gBACtC,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,iBAAiB,EAAE,CAAC,IAAI,EAAE,CAAC;gBACpE,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,KAAK,MAAM,CAAC,CAAC;gBAC1F,IAAI,WAAW,EAAE,CAAC;oBAChB,IAAI,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,CAAC;wBACpC,IAAI,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC,YAAY,GAAG,GAAG,EAAE,CAAC,GAAG,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;oBAC9E,CAAC;yBAAM,CAAC;wBACN,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC,GAAG,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;oBAC5C,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;CACF,CAAA;AAxVY,gDAAkB;6BAAlB,kBAAkB;IAD9B,IAAA,mBAAU,GAAE;IAsBR,WAAA,IAAA,eAAM,EAAC,4BAAoB,CAAC,CAAA;IAC5B,WAAA,IAAA,eAAM,EAAC,gCAAwB,CAAC,CAAA;IAChC,WAAA,IAAA,iBAAQ,GAAE,CAAA;IAAE,WAAA,IAAA,eAAM,EAAC,mCAAoB,CAAC,CAAA;qCANP,sBAAe;QACxB,sBAAa;QACd,4BAAY;QACK,kDAAsB;GApBtD,kBAAkB,CAwV9B"}
1
+ {"version":3,"file":"http-handler.service.js","sourceRoot":"","sources":["../../../../libs/rlb-nestjs-amqp/src/modules/proxy/services/http-handler.service.ts"],"names":[],"mappings":"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"}
@@ -7,6 +7,8 @@ export declare class JwtService implements OnModuleInit {
7
7
  private readonly logger;
8
8
  constructor(authConfig: HandlerAuthConfig[]);
9
9
  onModuleInit(): void;
10
+ private jwksClientFor;
11
+ resetClients(): void;
10
12
  private validateProviderConfig;
11
13
  private isSymmetricOrNone;
12
14
  private resolveAlgorithms;
@@ -27,18 +27,30 @@ let JwtService = JwtService_1 = class JwtService {
27
27
  }
28
28
  onModuleInit() {
29
29
  for (const cfg of this.authConfig || []) {
30
- if (cfg.type === "jwks") {
31
- this.jwksClients[cfg.name] = new jwks_rsa_1.JwksClient({
32
- jwksUri: cfg.jwksUri,
33
- cache: true,
34
- rateLimit: true,
35
- jwksRequestsPerMinute: 10,
36
- requestAgent: new https_1.Agent({ rejectUnauthorized: cfg.httpsAllowUnauthorized !== true })
37
- });
38
- }
30
+ this.jwksClientFor(cfg);
39
31
  this.validateProviderConfig(cfg);
40
32
  }
41
33
  }
34
+ jwksClientFor(cfg) {
35
+ if (cfg?.type !== 'jwks' || !cfg.jwksUri)
36
+ return undefined;
37
+ let client = this.jwksClients[cfg.name];
38
+ if (!client) {
39
+ client = new jwks_rsa_1.JwksClient({
40
+ jwksUri: cfg.jwksUri,
41
+ cache: true,
42
+ rateLimit: true,
43
+ jwksRequestsPerMinute: 10,
44
+ requestAgent: new https_1.Agent({ rejectUnauthorized: cfg.httpsAllowUnauthorized !== true }),
45
+ });
46
+ this.jwksClients[cfg.name] = client;
47
+ }
48
+ return client;
49
+ }
50
+ resetClients() {
51
+ for (const k of Object.keys(this.jwksClients))
52
+ delete this.jwksClients[k];
53
+ }
42
54
  validateProviderConfig(cfg) {
43
55
  if (cfg.type === 'jwt' || cfg.type === 'jwks') {
44
56
  if (!cfg.algorithms?.length) {
@@ -88,8 +100,9 @@ let JwtService = JwtService_1 = class JwtService {
88
100
  this.logger.warn("No auth config provided for JWT verification");
89
101
  return Promise.resolve(undefined);
90
102
  }
91
- if (!this.jwksClients[authConfig.name]) {
92
- this.logger.warn(`No jwks client found for ${authConfig.name}`);
103
+ const client = this.jwksClientFor(authConfig);
104
+ if (!client) {
105
+ this.logger.warn(`No jwks client for ${authConfig.name} (missing jwksUri?)`);
93
106
  return Promise.resolve(undefined);
94
107
  }
95
108
  const algorithms = this.resolveAlgorithms(authConfig, true);
@@ -102,7 +115,7 @@ let JwtService = JwtService_1 = class JwtService {
102
115
  return;
103
116
  }
104
117
  (0, jsonwebtoken_1.verify)(token, (header, callback) => {
105
- this.jwksClients[authConfig.name].getSigningKey(header.kid, (err, key) => {
118
+ client.getSigningKey(header.kid, (err, key) => {
106
119
  if (err) {
107
120
  this.logger.error(`[JWKS] [${authConfig.name}] Error getting signing key`, err);
108
121
  callback(err);
@@ -1 +1 @@
1
- {"version":3,"file":"jwt.service.js","sourceRoot":"","sources":["../../../../libs/rlb-nestjs-amqp/src/modules/proxy/services/jwt.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"jwt.service.js","sourceRoot":"","sources":["../../../../libs/rlb-nestjs-amqp/src/modules/proxy/services/jwt.service.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@open-rlb/nestjs-amqp",
3
- "version": "2.0.11",
3
+ "version": "2.0.13",
4
4
  "description": "",
5
5
  "author": "Giuseppe Riolo <riolo.giuseppe@gmail.com>",
6
6
  "private": false,
@@ -20,8 +20,9 @@ auto-discovery. All handlers bind to the topic `rlb-gateway-admin`
20
20
  ## Fixed vs configurable
21
21
 
22
22
  - FIXED (write exactly): topic names `rlb-gateway-admin`, control action
23
- `gw-reload`, and all action strings `gw-path-*` / `gw-auth-*` / `gw-metrics-*`
24
- / `gw-health` (from `GW_ADMIN_ACTIONS` + `GW_RELOAD_ACTION`).
23
+ `gw-reload` + `gw-auth-reload`, and all action strings `gw-path-*` / `gw-auth-*`
24
+ / `gw-metrics-*` / `gw-health` (from `GW_ADMIN_ACTIONS` + `GW_RELOAD_ACTION` +
25
+ `GW_AUTH_RELOAD_ACTION`).
25
26
  - CONFIGURABLE: each topic's exchange/queue/routingKey, and the route-discovery
26
27
  exchange/queue (defaults `rlb-route-discovery` / `rlb-route-sync`) — which must
27
28
  match on the publisher AND consumer sides.
@@ -104,7 +105,7 @@ auth/ACL resources. `create` rejects a `(method, path)` collision (409).
104
105
  | GET | `/admin/paths` | `gw-path-list` | query | `?page=&limit=` |
105
106
  | GET | `/admin/paths/search` | `gw-path-search` | query | free-text → `PaginationModel<StoredHttpPath>`; `?q=&page=&limit=` |
106
107
  | GET | `/admin/paths/export` | `gw-path-export` | query | enabled, ordered; used by `loadConfig.paths` |
107
- | PUT | `/admin/paths` | `gw-path-update` | body | needs `id`; re-checks collisions |
108
+ | PUT | `/admin/paths` | `gw-path-update` | body | needs `id`; re-checks collisions; soft fields → `userOverrides` (no lock); `releaseOverrides:[]` resets one |
108
109
  | GET | `/admin/paths/get` | `gw-path-get` | query | `?id=` |
109
110
  | DELETE | `/admin/paths` | `gw-path-delete` | body | `{ id }` |
110
111
  | GET | `/admin/route-log` | `gw-route-log-list` | query | route journal (who changed what); `?limit=` |
@@ -120,7 +121,7 @@ DB-stored providers, ON TOP of the static `auth-providers[]` in YAML.
120
121
  | GET | `/admin/auth` | `gw-auth-list` | query | `?page=&limit=` |
121
122
  | PUT | `/admin/auth` | `gw-auth-update` | body | upsert by name; `{ name, type, ... }` |
122
123
  | GET | `/admin/auth/get` | `gw-auth-get` | query | `?name=` |
123
- | DELETE | `/admin/auth` | `gw-auth-delete` | body | `{ name }` |
124
+ | DELETE | `/admin/auth` | `gw-auth-delete` | body | `{ name, force? }`; **409** if DB routes still reference it (conflicting routes in error `details.routes`); `force:true` clears `auth` on them first, then deletes |
124
125
  | GET | `/admin/auth/search` | `gw-auth-search` | query | free-text → `PaginationModel<StoredAuthProvider>`; `?q=&page=&limit=` |
125
126
 
126
127
  `gw-auth-export` (dump all enabled) also exists; not in the sample YAML.
@@ -183,12 +184,18 @@ ProxyModule.forRootAsync({ /* ... */ providers: [
183
184
  (`sample/config-sample/gateway-db` ships an `InfluxMetricsHook` that is a no-op
184
185
  until `INFLUX_URL/TOKEN/ORG` env are set.)
185
186
 
186
- ## Runtime reload — `gw-reload`
187
+ ## Runtime reload — `gw-reload` (routes) + `gw-auth-reload` (auth)
187
188
 
188
- The ONLY control action that forces a route rebuild. Published to the
189
- **broadcast control topic** (`gateway.reloadTopic`, NOT `rlb-gateway-admin`),
190
- `mode: event`. The control-topic subscriber ignores everything except
191
- `gw-reload`, staying decoupled from other control traffic.
189
+ Two SEPARATE control actions, both published to the **broadcast control topic**
190
+ (`gateway.reloadTopic`, NOT `rlb-gateway-admin`), `mode: event`. The control-topic
191
+ subscriber handles only these two and ignores everything else.
192
+
193
+ - **`gw-reload`** → rebuilds the route table (YAML + `loadConfig.paths` DB export).
194
+ - **`gw-auth-reload`** → reloads the DB auth-providers into RAM (the runtime
195
+ `AuthProviderRegistry`), merged with YAML (DB overrides by name). DELIBERATE:
196
+ NOT auto-fired on auth CRUD and NOT triggered by `gw-reload`. The gateway wires
197
+ the DB source via `{ provide: RLB_GTW_AUTH_PROVIDER_SOURCE, useExisting:
198
+ <AuthProviderRepository impl> }` in `ProxyModule.forRootAsync`.
192
199
 
193
200
  ```yaml
194
201
  - name: gw-reload
@@ -198,9 +205,18 @@ The ONLY control action that forces a route rebuild. Published to the
198
205
  topic: rlb-gateway-control # the broadcast control topic
199
206
  action: gw-reload
200
207
  mode: event
208
+ - name: gw-auth-reload # reload DB auth-providers into RAM (separate, deliberate)
209
+ method: POST
210
+ path: /admin/auth/reload
211
+ dataSource: body
212
+ topic: rlb-gateway-control
213
+ action: gw-auth-reload
214
+ mode: event
201
215
  ```
202
216
 
203
217
  Seed DB routes via `POST /admin/paths`, then `POST /admin/reload` — no restart.
218
+ Edit DB auth-providers via `PUT /admin/auth`, then `POST /admin/auth/reload` to
219
+ activate them (a conscious choice).
204
220
 
205
221
  ## Route auto-discovery (publisher vs consumer)
206
222
 
@@ -249,11 +265,24 @@ to the durable queue (competing consumers), then per manifest: diffs vs DB scope
249
265
  to the publishing service, applies only changes (insert/update; soft-disable stale
250
266
  to `enabled:false`; skip collisions — existing owner keeps `(method,path)`),
251
267
  journals every event via `RouteSyncLogRepository` (each row has `actor:'system'`;
252
- `skipped` rows mark user-modified routes left untouched; `updated` rows carry a
268
+ `skipped` rows mark fully-locked routes left untouched; `updated` rows carry a
253
269
  `changes` per-field diff like `actions: [+x, -y]`), and publishes `gw-reload` when
254
270
  anything changed. Never throws (acks; no poison loop). Stored routes carry `source`
255
- (`'microservice'|'user'`) and `modified`; user CRUD (`gw-path-*`) is audited too —
256
- `actor`=`X-GTW-AUTH-USERID` (else `'unknown'`), event `created`/`updated`/`deleted`.
271
+ (`'microservice'|'user'`), `modified` and `userOverrides`; user CRUD (`gw-path-*`) is
272
+ audited too — `actor`=`X-GTW-AUTH-USERID` (else `'unknown'`), event
273
+ `created`/`updated`/`deleted`.
274
+
275
+ **Edit lock is field-level.** A user edit to a HARD field (method, path, dataSource,
276
+ topic, action, mode, auth, name, parseRaw, binary, headers, forwardHeaders) sets
277
+ `modified:true` → auto-discovery SKIPS the whole route (user wins). A user edit to a
278
+ SOFT field — `enabled`, `actions`, `allowAnonymous`, `timeout`, `redirect`,
279
+ `successStatusCode` — does NOT lock: it is recorded in `userOverrides[]`, and auto-
280
+ discovery keeps updating every OTHER field while PRESERVING the user's value for the
281
+ overridden ones (user sets `timeout` → MS later renames `action`: action updates,
282
+ timeout stays; user disables → route stays OFF while content keeps updating). Hand a
283
+ field back to the MS via `gw-path-update` `releaseOverrides: ['timeout']` (drops it
284
+ from `userOverrides`). Cross-owner collisions with `yaml`/`manual` are debug-logged
285
+ only (intentional override); cross-service collisions stay `warn` + journaled.
257
286
 
258
287
  ```ts
259
288
  GatewayAdminModule.forRootAsync({
@@ -534,6 +534,13 @@ function adminPaths(controlTopic) {
534
534
  dataSource: body
535
535
  topic: ${controlTopic}
536
536
  action: gw-reload
537
+ mode: event
538
+ - name: gw-auth-reload # deliberate: reload DB auth-providers into RAM (separate from gw-reload)
539
+ method: POST
540
+ path: /admin/auth/reload
541
+ dataSource: body
542
+ topic: ${controlTopic}
543
+ action: gw-auth-reload
537
544
  mode: event`;
538
545
  }
539
546
  function buildImportStatements(sel) {
@@ -544,6 +551,8 @@ function buildImportStatements(sel) {
544
551
  libSymbols.push('AclActionRepository', 'AclGrantRepository', 'AclModule', 'AclRoleRepository', 'AclService', 'RLB_ACL_CACHE_STORE', 'RLB_GTW_ACL_ROLE_SERVICE');
545
552
  if (sel.admin || sel.routeReception)
546
553
  libSymbols.push('AuthProviderRepository', 'GatewayAdminModule', 'HttpMetricRepository', 'HttpPathRepository', 'RouteSyncLogRepository');
554
+ if (sel.admin && sel.gatewayConfig)
555
+ libSymbols.push('RLB_GTW_AUTH_PROVIDER_SOURCE');
547
556
  const lib = `import { ${[...new Set(libSymbols)].sort().join(', ')} } from '@open-rlb/nestjs-amqp';`;
548
557
  const lines = [lib, `import { ConfigModule, ConfigService } from '@nestjs/config';`, `import yamlConfig from './config/config.loader';`];
549
558
  if (sel.gatewayConfig)
@@ -570,12 +579,14 @@ function brokerForRootAsync() {
570
579
  })`;
571
580
  }
572
581
  function proxyForRootAsync(sel) {
573
- const providers = sel.acl
574
- ? `[
575
- // Action-gated paths resolve the caller's identity via AclService (in-process, no broker hop).
576
- { provide: RLB_GTW_ACL_ROLE_SERVICE, useExisting: AclService },
577
- ]`
578
- : `[]`;
582
+ const provs = [];
583
+ if (sel.acl)
584
+ provs.push(` // Action-gated paths resolve the caller's identity via AclService (in-process, no broker hop).
585
+ { provide: RLB_GTW_ACL_ROLE_SERVICE, useExisting: AclService },`);
586
+ if (sel.admin)
587
+ provs.push(` // DB auth-provider source for the runtime registry; activated by a deliberate gw-auth-reload.
588
+ { provide: RLB_GTW_AUTH_PROVIDER_SOURCE, useExisting: InMemoryAuthProviderRepository },`);
589
+ const providers = provs.length ? `[\n${provs.join('\n')}\n ]` : `[]`;
579
590
  return `ProxyModule.forRootAsync({
580
591
  imports: [ConfigModule],
581
592
  inject: [ConfigService],
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../libs/rlb-nestjs-amqp/src/schematics/nest-add/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../libs/rlb-nestjs-amqp/src/schematics/nest-add/index.ts"],"names":[],"mappings":"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"}