@memberjunction/server 5.7.0 → 5.9.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/README.md +1 -0
- package/dist/agents/skip-agent.d.ts +15 -1
- package/dist/agents/skip-agent.d.ts.map +1 -1
- package/dist/agents/skip-agent.js +78 -36
- package/dist/agents/skip-agent.js.map +1 -1
- package/dist/agents/skip-sdk.d.ts.map +1 -1
- package/dist/agents/skip-sdk.js +12 -0
- package/dist/agents/skip-sdk.js.map +1 -1
- package/dist/apolloServer/index.d.ts +10 -2
- package/dist/apolloServer/index.d.ts.map +1 -1
- package/dist/apolloServer/index.js +22 -8
- package/dist/apolloServer/index.js.map +1 -1
- package/dist/config.d.ts +125 -0
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +23 -0
- package/dist/config.js.map +1 -1
- package/dist/context.d.ts +17 -0
- package/dist/context.d.ts.map +1 -1
- package/dist/context.js +144 -62
- package/dist/context.js.map +1 -1
- package/dist/generated/generated.d.ts +607 -116
- package/dist/generated/generated.d.ts.map +1 -1
- package/dist/generated/generated.js +3542 -775
- package/dist/generated/generated.js.map +1 -1
- package/dist/generic/CacheInvalidationResolver.d.ts +32 -0
- package/dist/generic/CacheInvalidationResolver.d.ts.map +1 -0
- package/dist/generic/CacheInvalidationResolver.js +80 -0
- package/dist/generic/CacheInvalidationResolver.js.map +1 -0
- package/dist/generic/PubSubManager.d.ts +27 -0
- package/dist/generic/PubSubManager.d.ts.map +1 -0
- package/dist/generic/PubSubManager.js +42 -0
- package/dist/generic/PubSubManager.js.map +1 -0
- package/dist/generic/ResolverBase.d.ts +14 -0
- package/dist/generic/ResolverBase.d.ts.map +1 -1
- package/dist/generic/ResolverBase.js +50 -0
- package/dist/generic/ResolverBase.js.map +1 -1
- package/dist/hooks.d.ts +65 -0
- package/dist/hooks.d.ts.map +1 -0
- package/dist/hooks.js +14 -0
- package/dist/hooks.js.map +1 -0
- package/dist/index.d.ts +6 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +176 -45
- package/dist/index.js.map +1 -1
- package/dist/multiTenancy/index.d.ts +47 -0
- package/dist/multiTenancy/index.d.ts.map +1 -0
- package/dist/multiTenancy/index.js +152 -0
- package/dist/multiTenancy/index.js.map +1 -0
- package/dist/resolvers/IntegrationDiscoveryResolver.d.ts +123 -0
- package/dist/resolvers/IntegrationDiscoveryResolver.d.ts.map +1 -0
- package/dist/resolvers/IntegrationDiscoveryResolver.js +624 -0
- package/dist/resolvers/IntegrationDiscoveryResolver.js.map +1 -0
- package/dist/rest/RESTEndpointHandler.d.ts +3 -1
- package/dist/rest/RESTEndpointHandler.d.ts.map +1 -1
- package/dist/rest/RESTEndpointHandler.js +14 -33
- package/dist/rest/RESTEndpointHandler.js.map +1 -1
- package/dist/types.d.ts +9 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js.map +1 -1
- package/package.json +61 -57
- package/src/__tests__/multiTenancy.security.test.ts +334 -0
- package/src/__tests__/multiTenancy.test.ts +225 -0
- package/src/__tests__/unifiedAuth.test.ts +416 -0
- package/src/agents/skip-agent.ts +87 -34
- package/src/agents/skip-sdk.ts +13 -0
- package/src/apolloServer/index.ts +32 -16
- package/src/config.ts +25 -0
- package/src/context.ts +205 -98
- package/src/generated/generated.ts +2334 -430
- package/src/generic/CacheInvalidationResolver.ts +66 -0
- package/src/generic/PubSubManager.ts +47 -0
- package/src/generic/ResolverBase.ts +53 -0
- package/src/hooks.ts +77 -0
- package/src/index.ts +203 -49
- package/src/multiTenancy/index.ts +183 -0
- package/src/resolvers/IntegrationDiscoveryResolver.ts +584 -0
- package/src/rest/RESTEndpointHandler.ts +23 -42
- package/src/types.ts +10 -0
package/dist/config.d.ts
CHANGED
|
@@ -371,6 +371,50 @@ declare const queryDialectSchema: z.ZodObject<{
|
|
|
371
371
|
autoConvertOnSave?: string | number | boolean;
|
|
372
372
|
targetPlatforms?: string[];
|
|
373
373
|
}>;
|
|
374
|
+
declare const multiTenancySchema: z.ZodObject<{
|
|
375
|
+
/** Master switch — when false (default), no tenant isolation is applied */
|
|
376
|
+
enabled: z.ZodDefault<z.ZodEffects<z.ZodDefault<z.ZodOptional<z.ZodUnion<[z.ZodBoolean, z.ZodString, z.ZodNumber]>>>, boolean, string | number | boolean>>;
|
|
377
|
+
/** How the tenant ID is determined for each request */
|
|
378
|
+
contextSource: z.ZodDefault<z.ZodEnum<["header", "linkedEntity", "custom"]>>;
|
|
379
|
+
/** HTTP header name used when contextSource is 'header' */
|
|
380
|
+
tenantHeader: z.ZodDefault<z.ZodString>;
|
|
381
|
+
/** Whether scopedEntities is an allowlist or denylist of entities to filter */
|
|
382
|
+
scopingStrategy: z.ZodDefault<z.ZodEnum<["allowlist", "denylist"]>>;
|
|
383
|
+
/** Entities included/excluded from tenant filtering based on scopingStrategy */
|
|
384
|
+
scopedEntities: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
|
|
385
|
+
/** When true, entities in the __mj core schema are never tenant-filtered */
|
|
386
|
+
autoExcludeCoreEntities: z.ZodDefault<z.ZodEffects<z.ZodDefault<z.ZodOptional<z.ZodUnion<[z.ZodBoolean, z.ZodString, z.ZodNumber]>>>, boolean, string | number | boolean>>;
|
|
387
|
+
/** Default column name containing the tenant identifier */
|
|
388
|
+
defaultTenantColumn: z.ZodDefault<z.ZodString>;
|
|
389
|
+
/** Per-entity overrides for the tenant column name: { "EntityName": "ColumnName" } */
|
|
390
|
+
entityColumnMappings: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
391
|
+
/** Roles that bypass tenant filtering entirely */
|
|
392
|
+
adminRoles: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
|
|
393
|
+
/** Write protection mode: 'strict' rejects, 'log' warns, 'off' skips validation */
|
|
394
|
+
writeProtection: z.ZodDefault<z.ZodEnum<["strict", "log", "off"]>>;
|
|
395
|
+
}, "strip", z.ZodTypeAny, {
|
|
396
|
+
enabled?: boolean;
|
|
397
|
+
contextSource?: "header" | "linkedEntity" | "custom";
|
|
398
|
+
tenantHeader?: string;
|
|
399
|
+
scopingStrategy?: "allowlist" | "denylist";
|
|
400
|
+
scopedEntities?: string[];
|
|
401
|
+
autoExcludeCoreEntities?: boolean;
|
|
402
|
+
defaultTenantColumn?: string;
|
|
403
|
+
entityColumnMappings?: Record<string, string>;
|
|
404
|
+
adminRoles?: string[];
|
|
405
|
+
writeProtection?: "strict" | "log" | "off";
|
|
406
|
+
}, {
|
|
407
|
+
enabled?: string | number | boolean;
|
|
408
|
+
contextSource?: "header" | "linkedEntity" | "custom";
|
|
409
|
+
tenantHeader?: string;
|
|
410
|
+
scopingStrategy?: "allowlist" | "denylist";
|
|
411
|
+
scopedEntities?: string[];
|
|
412
|
+
autoExcludeCoreEntities?: string | number | boolean;
|
|
413
|
+
defaultTenantColumn?: string;
|
|
414
|
+
entityColumnMappings?: Record<string, string>;
|
|
415
|
+
adminRoles?: string[];
|
|
416
|
+
writeProtection?: "strict" | "log" | "off";
|
|
417
|
+
}>;
|
|
374
418
|
declare const telemetrySchema: z.ZodObject<{
|
|
375
419
|
enabled: z.ZodDefault<z.ZodEffects<z.ZodDefault<z.ZodOptional<z.ZodUnion<[z.ZodBoolean, z.ZodString, z.ZodNumber]>>>, boolean, string | number | boolean>>;
|
|
376
420
|
level: z.ZodDefault<z.ZodOptional<z.ZodEnum<["minimal", "standard", "verbose", "debug"]>>>;
|
|
@@ -739,6 +783,50 @@ declare const configInfoSchema: z.ZodObject<{
|
|
|
739
783
|
autoConvertOnSave?: string | number | boolean;
|
|
740
784
|
targetPlatforms?: string[];
|
|
741
785
|
}>>>;
|
|
786
|
+
multiTenancy: z.ZodDefault<z.ZodOptional<z.ZodObject<{
|
|
787
|
+
/** Master switch — when false (default), no tenant isolation is applied */
|
|
788
|
+
enabled: z.ZodDefault<z.ZodEffects<z.ZodDefault<z.ZodOptional<z.ZodUnion<[z.ZodBoolean, z.ZodString, z.ZodNumber]>>>, boolean, string | number | boolean>>;
|
|
789
|
+
/** How the tenant ID is determined for each request */
|
|
790
|
+
contextSource: z.ZodDefault<z.ZodEnum<["header", "linkedEntity", "custom"]>>;
|
|
791
|
+
/** HTTP header name used when contextSource is 'header' */
|
|
792
|
+
tenantHeader: z.ZodDefault<z.ZodString>;
|
|
793
|
+
/** Whether scopedEntities is an allowlist or denylist of entities to filter */
|
|
794
|
+
scopingStrategy: z.ZodDefault<z.ZodEnum<["allowlist", "denylist"]>>;
|
|
795
|
+
/** Entities included/excluded from tenant filtering based on scopingStrategy */
|
|
796
|
+
scopedEntities: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
|
|
797
|
+
/** When true, entities in the __mj core schema are never tenant-filtered */
|
|
798
|
+
autoExcludeCoreEntities: z.ZodDefault<z.ZodEffects<z.ZodDefault<z.ZodOptional<z.ZodUnion<[z.ZodBoolean, z.ZodString, z.ZodNumber]>>>, boolean, string | number | boolean>>;
|
|
799
|
+
/** Default column name containing the tenant identifier */
|
|
800
|
+
defaultTenantColumn: z.ZodDefault<z.ZodString>;
|
|
801
|
+
/** Per-entity overrides for the tenant column name: { "EntityName": "ColumnName" } */
|
|
802
|
+
entityColumnMappings: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
803
|
+
/** Roles that bypass tenant filtering entirely */
|
|
804
|
+
adminRoles: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
|
|
805
|
+
/** Write protection mode: 'strict' rejects, 'log' warns, 'off' skips validation */
|
|
806
|
+
writeProtection: z.ZodDefault<z.ZodEnum<["strict", "log", "off"]>>;
|
|
807
|
+
}, "strip", z.ZodTypeAny, {
|
|
808
|
+
enabled?: boolean;
|
|
809
|
+
contextSource?: "header" | "linkedEntity" | "custom";
|
|
810
|
+
tenantHeader?: string;
|
|
811
|
+
scopingStrategy?: "allowlist" | "denylist";
|
|
812
|
+
scopedEntities?: string[];
|
|
813
|
+
autoExcludeCoreEntities?: boolean;
|
|
814
|
+
defaultTenantColumn?: string;
|
|
815
|
+
entityColumnMappings?: Record<string, string>;
|
|
816
|
+
adminRoles?: string[];
|
|
817
|
+
writeProtection?: "strict" | "log" | "off";
|
|
818
|
+
}, {
|
|
819
|
+
enabled?: string | number | boolean;
|
|
820
|
+
contextSource?: "header" | "linkedEntity" | "custom";
|
|
821
|
+
tenantHeader?: string;
|
|
822
|
+
scopingStrategy?: "allowlist" | "denylist";
|
|
823
|
+
scopedEntities?: string[];
|
|
824
|
+
autoExcludeCoreEntities?: string | number | boolean;
|
|
825
|
+
defaultTenantColumn?: string;
|
|
826
|
+
entityColumnMappings?: Record<string, string>;
|
|
827
|
+
adminRoles?: string[];
|
|
828
|
+
writeProtection?: "strict" | "log" | "off";
|
|
829
|
+
}>>>;
|
|
742
830
|
apiKey: z.ZodOptional<z.ZodString>;
|
|
743
831
|
baseUrl: z.ZodDefault<z.ZodString>;
|
|
744
832
|
publicUrl: z.ZodDefault<z.ZodOptional<z.ZodString>>;
|
|
@@ -879,6 +967,18 @@ declare const configInfoSchema: z.ZodObject<{
|
|
|
879
967
|
autoConvertOnSave?: boolean;
|
|
880
968
|
targetPlatforms?: string[];
|
|
881
969
|
};
|
|
970
|
+
multiTenancy?: {
|
|
971
|
+
enabled?: boolean;
|
|
972
|
+
contextSource?: "header" | "linkedEntity" | "custom";
|
|
973
|
+
tenantHeader?: string;
|
|
974
|
+
scopingStrategy?: "allowlist" | "denylist";
|
|
975
|
+
scopedEntities?: string[];
|
|
976
|
+
autoExcludeCoreEntities?: boolean;
|
|
977
|
+
defaultTenantColumn?: string;
|
|
978
|
+
entityColumnMappings?: Record<string, string>;
|
|
979
|
+
adminRoles?: string[];
|
|
980
|
+
writeProtection?: "strict" | "log" | "off";
|
|
981
|
+
};
|
|
882
982
|
baseUrl?: string;
|
|
883
983
|
publicUrl?: string;
|
|
884
984
|
dbHost?: string;
|
|
@@ -1016,6 +1116,18 @@ declare const configInfoSchema: z.ZodObject<{
|
|
|
1016
1116
|
autoConvertOnSave?: string | number | boolean;
|
|
1017
1117
|
targetPlatforms?: string[];
|
|
1018
1118
|
};
|
|
1119
|
+
multiTenancy?: {
|
|
1120
|
+
enabled?: string | number | boolean;
|
|
1121
|
+
contextSource?: "header" | "linkedEntity" | "custom";
|
|
1122
|
+
tenantHeader?: string;
|
|
1123
|
+
scopingStrategy?: "allowlist" | "denylist";
|
|
1124
|
+
scopedEntities?: string[];
|
|
1125
|
+
autoExcludeCoreEntities?: string | number | boolean;
|
|
1126
|
+
defaultTenantColumn?: string;
|
|
1127
|
+
entityColumnMappings?: Record<string, string>;
|
|
1128
|
+
adminRoles?: string[];
|
|
1129
|
+
writeProtection?: "strict" | "log" | "off";
|
|
1130
|
+
};
|
|
1019
1131
|
baseUrl?: string;
|
|
1020
1132
|
publicUrl?: string;
|
|
1021
1133
|
dbHost?: string;
|
|
@@ -1047,6 +1159,7 @@ export type ComponentRegistryConfig = z.infer<typeof componentRegistrySchema>;
|
|
|
1047
1159
|
export type ScheduledJobsConfig = z.infer<typeof scheduledJobsSchema>;
|
|
1048
1160
|
export type TelemetryConfig = z.infer<typeof telemetrySchema>;
|
|
1049
1161
|
export type QueryDialectConfig = z.infer<typeof queryDialectSchema>;
|
|
1162
|
+
export type MultiTenancyConfig = z.infer<typeof multiTenancySchema>;
|
|
1050
1163
|
export type ConfigInfo = z.infer<typeof configInfoSchema>;
|
|
1051
1164
|
/**
|
|
1052
1165
|
* Default MJServer configuration values.
|
|
@@ -1188,6 +1301,18 @@ export declare function loadConfig(): {
|
|
|
1188
1301
|
autoConvertOnSave?: boolean;
|
|
1189
1302
|
targetPlatforms?: string[];
|
|
1190
1303
|
};
|
|
1304
|
+
multiTenancy?: {
|
|
1305
|
+
enabled?: boolean;
|
|
1306
|
+
contextSource?: "header" | "linkedEntity" | "custom";
|
|
1307
|
+
tenantHeader?: string;
|
|
1308
|
+
scopingStrategy?: "allowlist" | "denylist";
|
|
1309
|
+
scopedEntities?: string[];
|
|
1310
|
+
autoExcludeCoreEntities?: boolean;
|
|
1311
|
+
defaultTenantColumn?: string;
|
|
1312
|
+
entityColumnMappings?: Record<string, string>;
|
|
1313
|
+
adminRoles?: string[];
|
|
1314
|
+
writeProtection?: "strict" | "log" | "off";
|
|
1315
|
+
};
|
|
1191
1316
|
baseUrl?: string;
|
|
1192
1317
|
publicUrl?: string;
|
|
1193
1318
|
dbHost?: string;
|
package/dist/config.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAOxB,QAAA,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAU1B,CAAC;AAEH,QAAA,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAY9B,CAAC;AAEH,QAAA,MAAM,uBAAuB;;;;;;EAE3B,CAAC;AAEH,QAAA,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;EAMxB,CAAC;AA2BH,QAAA,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAgBrB,CAAC;AAEH,QAAA,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;EAQ3B,CAAC;AAEH,QAAA,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAOpB,CAAC;AAEH,QAAA,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gCAUR,CAAC;AAEjB,QAAA,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gCAab,CAAC;AAEjB,QAAA,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;EAMvB,CAAC;AAEH,QAAA,MAAM,kBAAkB;IACtB,sGAAsG;;IAEtG,sFAAsF;;;;;;;;EAEtF,CAAC;AAEH,QAAA,MAAM,eAAe;;;;;;;;;EAKnB,CAAC;AAEH,QAAA,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
|
package/dist/config.js
CHANGED
|
@@ -133,6 +133,28 @@ const queryDialectSchema = z.object({
|
|
|
133
133
|
/** List of SQLDialect PlatformKey values to auto-convert to (e.g., ['postgresql']) */
|
|
134
134
|
targetPlatforms: z.array(z.string()).optional().default([]),
|
|
135
135
|
});
|
|
136
|
+
const multiTenancySchema = z.object({
|
|
137
|
+
/** Master switch — when false (default), no tenant isolation is applied */
|
|
138
|
+
enabled: zodBooleanWithTransforms().default(false),
|
|
139
|
+
/** How the tenant ID is determined for each request */
|
|
140
|
+
contextSource: z.enum(['header', 'linkedEntity', 'custom']).default('header'),
|
|
141
|
+
/** HTTP header name used when contextSource is 'header' */
|
|
142
|
+
tenantHeader: z.string().default('X-Tenant-ID'),
|
|
143
|
+
/** Whether scopedEntities is an allowlist or denylist of entities to filter */
|
|
144
|
+
scopingStrategy: z.enum(['allowlist', 'denylist']).default('denylist'),
|
|
145
|
+
/** Entities included/excluded from tenant filtering based on scopingStrategy */
|
|
146
|
+
scopedEntities: z.array(z.string()).default([]),
|
|
147
|
+
/** When true, entities in the __mj core schema are never tenant-filtered */
|
|
148
|
+
autoExcludeCoreEntities: zodBooleanWithTransforms().default(true),
|
|
149
|
+
/** Default column name containing the tenant identifier */
|
|
150
|
+
defaultTenantColumn: z.string().default('OrganizationID'),
|
|
151
|
+
/** Per-entity overrides for the tenant column name: { "EntityName": "ColumnName" } */
|
|
152
|
+
entityColumnMappings: z.record(z.string()).default({}),
|
|
153
|
+
/** Roles that bypass tenant filtering entirely */
|
|
154
|
+
adminRoles: z.array(z.string()).default(['Admin', 'System']),
|
|
155
|
+
/** Write protection mode: 'strict' rejects, 'log' warns, 'off' skips validation */
|
|
156
|
+
writeProtection: z.enum(['strict', 'log', 'off']).default('strict'),
|
|
157
|
+
});
|
|
136
158
|
const telemetrySchema = z.object({
|
|
137
159
|
enabled: zodBooleanWithTransforms().default(process.env.MJ_TELEMETRY_ENABLED !== 'false' // Enabled by default unless explicitly disabled
|
|
138
160
|
),
|
|
@@ -150,6 +172,7 @@ const configInfoSchema = z.object({
|
|
|
150
172
|
scheduledJobs: scheduledJobsSchema.optional().default({}),
|
|
151
173
|
telemetry: telemetrySchema.optional().default({}),
|
|
152
174
|
queryDialects: queryDialectSchema.optional().default({}),
|
|
175
|
+
multiTenancy: multiTenancySchema.optional().default({}),
|
|
153
176
|
apiKey: z.string().optional(),
|
|
154
177
|
baseUrl: z.string().default('http://localhost'),
|
|
155
178
|
publicUrl: z.string().optional().default(process.env.MJAPI_PUBLIC_URL || ''), // Public URL for callbacks (e.g., ngrok URL when developing)
|
package/dist/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
|
package/dist/context.d.ts
CHANGED
|
@@ -3,6 +3,7 @@ import 'reflect-metadata';
|
|
|
3
3
|
import { Subject } from 'rxjs';
|
|
4
4
|
import sql from 'mssql';
|
|
5
5
|
import { DataSourceInfo, UserPayload } from './types.js';
|
|
6
|
+
import type { RequestHandler } from 'express';
|
|
6
7
|
import { DatabaseProviderBase } from '@memberjunction/core';
|
|
7
8
|
/**
|
|
8
9
|
* Request context for API key usage logging.
|
|
@@ -20,6 +21,22 @@ export interface RequestContext {
|
|
|
20
21
|
userAgent?: string;
|
|
21
22
|
}
|
|
22
23
|
export declare const getUserPayload: (bearerToken: string, sessionId: string, dataSources: DataSourceInfo[], requestDomain?: string, systemApiKey?: string, userApiKey?: string, requestContext?: RequestContext) => Promise<UserPayload>;
|
|
24
|
+
/**
|
|
25
|
+
* Creates a single Express middleware that authenticates ALL routes.
|
|
26
|
+
*
|
|
27
|
+
* On success, attaches `req.userPayload` (UserPayload) and `req['mjUser']` (UserInfo)
|
|
28
|
+
* so downstream middleware and route handlers can read the authenticated user without
|
|
29
|
+
* re-authenticating. On failure, returns 401.
|
|
30
|
+
*
|
|
31
|
+
* Register OAuth callback routes BEFORE this middleware so they remain unauthenticated.
|
|
32
|
+
*/
|
|
33
|
+
export declare function createUnifiedAuthMiddleware(dataSources: DataSourceInfo[]): RequestHandler;
|
|
34
|
+
/**
|
|
35
|
+
* Creates the GraphQL context from an already-authenticated request.
|
|
36
|
+
*
|
|
37
|
+
* The unified auth middleware has already resolved `req.userPayload` before this runs.
|
|
38
|
+
* This function reads the payload and creates per-request database providers.
|
|
39
|
+
*/
|
|
23
40
|
export declare const contextFunction: ({ setupComplete$, dataSource, dataSources }: {
|
|
24
41
|
setupComplete$: Subject<unknown>;
|
|
25
42
|
dataSource: sql.ConnectionPool;
|
package/dist/context.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../src/context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,MAAM,CAAC;AAGvC,OAAO,kBAAkB,CAAC;AAC1B,OAAO,EAAE,OAAO,EAAkB,MAAM,MAAM,CAAC;AAE/C,OAAO,GAAG,MAAM,OAAO,CAAC;AAIxB,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAIzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAsC5D;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,uDAAuD;IACvD,QAAQ,EAAE,MAAM,CAAC;IACjB,wCAAwC;IACxC,MAAM,EAAE,MAAM,CAAC;IACf,0CAA0C;IAC1C,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,wBAAwB;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,wBAAwB;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,eAAO,MAAM,cAAc,GACzB,aAAa,MAAM,EACnB,iBAAqB,EACrB,aAAa,cAAc,EAAE,EAC7B,gBAAgB,MAAM,EACtB,eAAe,MAAM,EACrB,aAAa,MAAM,EACnB,iBAAiB,cAAc,KAC9B,OAAO,CAAC,WAAW,CAkIrB,CAAC;
|
|
1
|
+
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../src/context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,MAAM,CAAC;AAGvC,OAAO,kBAAkB,CAAC;AAC1B,OAAO,EAAE,OAAO,EAAkB,MAAM,MAAM,CAAC;AAE/C,OAAO,GAAG,MAAM,OAAO,CAAC;AAIxB,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAIzD,OAAO,KAAK,EAAE,cAAc,EAAmC,MAAM,SAAS,CAAC;AAC/E,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAsC5D;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,uDAAuD;IACvD,QAAQ,EAAE,MAAM,CAAC;IACjB,wCAAwC;IACxC,MAAM,EAAE,MAAM,CAAC;IACf,0CAA0C;IAC1C,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,wBAAwB;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,wBAAwB;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,eAAO,MAAM,cAAc,GACzB,aAAa,MAAM,EACnB,iBAAqB,EACrB,aAAa,cAAc,EAAE,EAC7B,gBAAgB,MAAM,EACtB,eAAe,MAAM,EACrB,aAAa,MAAM,EACnB,iBAAiB,cAAc,KAC9B,OAAO,CAAC,WAAW,CAkIrB,CAAC;AAwCF;;;;;;;;GAQG;AACH,wBAAgB,2BAA2B,CACzC,WAAW,EAAE,cAAc,EAAE,GAC5B,cAAc,CAiDhB;AAED;;;;;GAKG;AACH,eAAO,MAAM,eAAe,GACzB,6CAA6C;IAAE,cAAc,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;IAAC,UAAU,EAAE,GAAG,CAAC,cAAc,CAAC;IAAC,WAAW,EAAE,cAAc,EAAE,CAAA;CAAE,MAC1I,SAAS;IAAE,GAAG,EAAE,eAAe,CAAA;CAAE;;;;;kBAwCb,oBAAoB;cAAQ,YAAY,GAAG,WAAW;;EAThF,CAAC"}
|
package/dist/context.js
CHANGED
|
@@ -144,61 +144,123 @@ export const getUserPayload = async (bearerToken, sessionId = 'default', dataSou
|
|
|
144
144
|
throw new AuthenticationError('Unable to authenticate user');
|
|
145
145
|
}
|
|
146
146
|
};
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
147
|
+
/**
|
|
148
|
+
* Extracts auth headers and builds a RequestContext from an Express request.
|
|
149
|
+
* Shared by both the unified auth middleware and the WebSocket context.
|
|
150
|
+
*/
|
|
151
|
+
function extractAuthInputs(req) {
|
|
150
152
|
const sessionIdRaw = req.headers['x-session-id'];
|
|
151
153
|
const requestDomain = url.parse(req.headers.origin || '');
|
|
152
154
|
const sessionId = sessionIdRaw ? sessionIdRaw.toString() : '';
|
|
153
155
|
const bearerToken = req.headers.authorization ?? '';
|
|
154
|
-
// Two types of API keys:
|
|
155
|
-
// - x-mj-api-key: System API key for system-level operations (authenticates as system user)
|
|
156
|
-
// - X-API-Key: User API key (mj_sk_*) for user-authenticated operations
|
|
157
156
|
const systemApiKey = String(req.headers['x-mj-api-key']);
|
|
158
157
|
const userApiKey = String(req.headers['x-api-key']);
|
|
159
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
160
|
-
const reqAny = req;
|
|
161
|
-
const operationName = reqAny.body?.operationName;
|
|
162
|
-
if (operationName !== 'IntrospectionQuery') {
|
|
163
|
-
console.log({ operationName, variables: reqAny.body?.variables || undefined });
|
|
164
|
-
}
|
|
165
|
-
// Build request context for API key logging
|
|
166
|
-
// Note: responseTimeMs is not available at auth time, only endpoint/method/ip/ua
|
|
167
158
|
const expressReq = req;
|
|
168
159
|
const requestContext = {
|
|
169
160
|
endpoint: expressReq.path || expressReq.url || '/api',
|
|
170
161
|
method: expressReq.method || 'POST',
|
|
171
|
-
operationName:
|
|
162
|
+
operationName: undefined,
|
|
172
163
|
ipAddress: expressReq.ip || expressReq.socket?.remoteAddress || undefined,
|
|
173
164
|
userAgent: req.headers['user-agent'],
|
|
174
165
|
};
|
|
175
|
-
|
|
166
|
+
return {
|
|
167
|
+
bearerToken,
|
|
168
|
+
sessionId,
|
|
169
|
+
requestDomain: requestDomain?.hostname ?? undefined,
|
|
170
|
+
systemApiKey,
|
|
171
|
+
userApiKey,
|
|
172
|
+
requestContext,
|
|
173
|
+
};
|
|
174
|
+
}
|
|
175
|
+
/**
|
|
176
|
+
* Creates a single Express middleware that authenticates ALL routes.
|
|
177
|
+
*
|
|
178
|
+
* On success, attaches `req.userPayload` (UserPayload) and `req['mjUser']` (UserInfo)
|
|
179
|
+
* so downstream middleware and route handlers can read the authenticated user without
|
|
180
|
+
* re-authenticating. On failure, returns 401.
|
|
181
|
+
*
|
|
182
|
+
* Register OAuth callback routes BEFORE this middleware so they remain unauthenticated.
|
|
183
|
+
*/
|
|
184
|
+
export function createUnifiedAuthMiddleware(dataSources) {
|
|
185
|
+
return async (req, res, next) => {
|
|
186
|
+
// Skip CORS preflight requests — OPTIONS requests never carry credentials
|
|
187
|
+
// and must pass through to the downstream cors() middleware to get proper headers.
|
|
188
|
+
if (req.method === 'OPTIONS') {
|
|
189
|
+
next();
|
|
190
|
+
return;
|
|
191
|
+
}
|
|
192
|
+
try {
|
|
193
|
+
const { bearerToken, sessionId, requestDomain, systemApiKey, userApiKey, requestContext } = extractAuthInputs(req);
|
|
194
|
+
const userPayload = await getUserPayload(bearerToken, sessionId, dataSources, requestDomain, systemApiKey, userApiKey, requestContext);
|
|
195
|
+
if (!userPayload) {
|
|
196
|
+
res.status(401).json({ error: 'Invalid token' });
|
|
197
|
+
return;
|
|
198
|
+
}
|
|
199
|
+
// Attach to request for downstream consumers
|
|
200
|
+
req.userPayload = userPayload;
|
|
201
|
+
// Standard Express convention and MJ REST convention
|
|
202
|
+
req['user'] = userPayload;
|
|
203
|
+
req['mjUser'] = userPayload.userRecord;
|
|
204
|
+
next();
|
|
205
|
+
}
|
|
206
|
+
catch (error) {
|
|
207
|
+
if (error instanceof TokenExpiredError) {
|
|
208
|
+
res.status(401).json({
|
|
209
|
+
errors: [{
|
|
210
|
+
message: 'Token expired',
|
|
211
|
+
extensions: { code: 'JWT_EXPIRED' }
|
|
212
|
+
}]
|
|
213
|
+
});
|
|
214
|
+
return;
|
|
215
|
+
}
|
|
216
|
+
console.error('Auth error:', error);
|
|
217
|
+
res.status(401).json({ error: 'Authentication failed' });
|
|
218
|
+
}
|
|
219
|
+
};
|
|
220
|
+
}
|
|
221
|
+
/**
|
|
222
|
+
* Creates the GraphQL context from an already-authenticated request.
|
|
223
|
+
*
|
|
224
|
+
* The unified auth middleware has already resolved `req.userPayload` before this runs.
|
|
225
|
+
* This function reads the payload and creates per-request database providers.
|
|
226
|
+
*/
|
|
227
|
+
export const contextFunction = ({ setupComplete$, dataSource, dataSources }) => async ({ req }) => {
|
|
228
|
+
await firstValueFrom(setupComplete$); // wait for setup to complete before processing the request
|
|
229
|
+
// Log the GraphQL operation for debugging (skip introspection noise)
|
|
230
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
231
|
+
const reqAny = req;
|
|
232
|
+
const operationName = reqAny.body?.operationName;
|
|
233
|
+
if (operationName !== 'IntrospectionQuery') {
|
|
234
|
+
console.log({ operationName, variables: reqAny.body?.variables || undefined });
|
|
235
|
+
}
|
|
236
|
+
// Auth already happened in the unified auth middleware — just read the result
|
|
237
|
+
const expressReq = req;
|
|
238
|
+
const userPayload = expressReq.userPayload;
|
|
239
|
+
if (!userPayload) {
|
|
240
|
+
throw new AuthenticationError('No user payload — auth middleware may not have run');
|
|
241
|
+
}
|
|
176
242
|
if (Metadata.Provider.Entities.length === 0) {
|
|
177
243
|
console.warn('WARNING: No entities found in global/shared metadata, this can often be due to the use of **global** Metadata/RunView/DB Providers in a multi-user environment. Check your code to make sure you are using the providers passed to you in AppContext by MJServer and not calling new Metadata() new RunView() new RunQuery() and similar patterns as those are unstable at times in multi-user server environments!!!');
|
|
178
244
|
}
|
|
179
245
|
// Create per-request provider instance based on database type
|
|
246
|
+
const providers = await createPerRequestProviders(dataSource, dataSources);
|
|
247
|
+
return {
|
|
248
|
+
dataSource,
|
|
249
|
+
dataSources,
|
|
250
|
+
userPayload,
|
|
251
|
+
providers,
|
|
252
|
+
};
|
|
253
|
+
};
|
|
254
|
+
/**
|
|
255
|
+
* Creates per-request DatabaseProviderBase instances for the GraphQL context.
|
|
256
|
+
* Handles both SQL Server and PostgreSQL paths.
|
|
257
|
+
*/
|
|
258
|
+
async function createPerRequestProviders(dataSource, dataSources) {
|
|
180
259
|
const dbType = process.env.DB_TYPE?.toLowerCase();
|
|
181
260
|
const isPostgres = dbType === 'postgresql' || dbType === 'postgres' || dbType === 'pg';
|
|
182
261
|
let p;
|
|
183
262
|
if (isPostgres) {
|
|
184
|
-
|
|
185
|
-
const pgHost = process.env.PG_HOST || process.env.DB_HOST || 'localhost';
|
|
186
|
-
const pgPort = parseInt(process.env.PG_PORT || process.env.DB_PORT || '5432', 10);
|
|
187
|
-
const pgUser = process.env.PG_USERNAME || process.env.DB_USERNAME || 'postgres';
|
|
188
|
-
const pgPass = process.env.PG_PASSWORD || process.env.DB_PASSWORD || '';
|
|
189
|
-
const pgDatabase = process.env.PG_DATABASE || process.env.DB_DATABASE || '';
|
|
190
|
-
const pgProvider = new PostgreSQLDataProvider();
|
|
191
|
-
const pgConfig = new PostgreSQLProviderConfigData({ Host: pgHost, Port: pgPort, Database: pgDatabase, User: pgUser, Password: pgPass }, mj_core_schema, 0, undefined, undefined, false);
|
|
192
|
-
// Share the connection pool from the primary provider to avoid pool exhaustion.
|
|
193
|
-
// Each per-request provider was creating its own pool, leading to "too many clients" errors.
|
|
194
|
-
const primaryProvider = Metadata.Provider;
|
|
195
|
-
if (primaryProvider?.DatabaseConnection) {
|
|
196
|
-
await pgProvider.ConfigWithSharedPool(pgConfig, primaryProvider.DatabaseConnection);
|
|
197
|
-
}
|
|
198
|
-
else {
|
|
199
|
-
await pgProvider.Config(pgConfig);
|
|
200
|
-
}
|
|
201
|
-
p = pgProvider;
|
|
263
|
+
p = await createPostgresProvider();
|
|
202
264
|
}
|
|
203
265
|
else {
|
|
204
266
|
const config = new SQLServerProviderConfigData(dataSource, mj_core_schema, 0, undefined, undefined, false);
|
|
@@ -206,37 +268,57 @@ export const contextFunction = ({ setupComplete$, dataSource, dataSources }) =>
|
|
|
206
268
|
await sqlProvider.Config(config);
|
|
207
269
|
p = sqlProvider;
|
|
208
270
|
}
|
|
209
|
-
|
|
271
|
+
const providers = [
|
|
272
|
+
{ provider: p, type: 'Read-Write' }
|
|
273
|
+
];
|
|
210
274
|
if (!isPostgres) {
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
const roProvider = new SQLServerDataProvider();
|
|
215
|
-
const rConfig = new SQLServerProviderConfigData(readOnlyDataSource, mj_core_schema, 0, undefined, undefined, false);
|
|
216
|
-
await roProvider.Config(rConfig);
|
|
217
|
-
rp = roProvider;
|
|
218
|
-
}
|
|
275
|
+
const rp = await tryCreateReadOnlyProvider(dataSources);
|
|
276
|
+
if (rp) {
|
|
277
|
+
providers.push({ provider: rp, type: 'Read-Only' });
|
|
219
278
|
}
|
|
220
|
-
|
|
221
|
-
|
|
279
|
+
}
|
|
280
|
+
return providers;
|
|
281
|
+
}
|
|
282
|
+
/**
|
|
283
|
+
* Creates a PostgreSQL per-request provider, sharing the connection pool
|
|
284
|
+
* from the primary provider to avoid pool exhaustion.
|
|
285
|
+
*/
|
|
286
|
+
async function createPostgresProvider() {
|
|
287
|
+
const { PostgreSQLDataProvider, PostgreSQLProviderConfigData } = await import('@memberjunction/postgresql-dataprovider');
|
|
288
|
+
const pgHost = process.env.PG_HOST || process.env.DB_HOST || 'localhost';
|
|
289
|
+
const pgPort = parseInt(process.env.PG_PORT || process.env.DB_PORT || '5432', 10);
|
|
290
|
+
const pgUser = process.env.PG_USERNAME || process.env.DB_USERNAME || 'postgres';
|
|
291
|
+
const pgPass = process.env.PG_PASSWORD || process.env.DB_PASSWORD || '';
|
|
292
|
+
const pgDatabase = process.env.PG_DATABASE || process.env.DB_DATABASE || '';
|
|
293
|
+
const pgProvider = new PostgreSQLDataProvider();
|
|
294
|
+
const pgConfig = new PostgreSQLProviderConfigData({ Host: pgHost, Port: pgPort, Database: pgDatabase, User: pgUser, Password: pgPass }, mj_core_schema, 0, undefined, undefined, false);
|
|
295
|
+
// Share the connection pool from the primary provider to avoid pool exhaustion
|
|
296
|
+
const primaryProvider = Metadata.Provider;
|
|
297
|
+
if (primaryProvider?.DatabaseConnection) {
|
|
298
|
+
await pgProvider.ConfigWithSharedPool(pgConfig, primaryProvider.DatabaseConnection);
|
|
299
|
+
}
|
|
300
|
+
else {
|
|
301
|
+
await pgProvider.Config(pgConfig);
|
|
302
|
+
}
|
|
303
|
+
return pgProvider;
|
|
304
|
+
}
|
|
305
|
+
/**
|
|
306
|
+
* Attempts to create a read-only SQL Server provider.
|
|
307
|
+
* Returns null if no read-only data source is available.
|
|
308
|
+
*/
|
|
309
|
+
async function tryCreateReadOnlyProvider(dataSources) {
|
|
310
|
+
try {
|
|
311
|
+
const readOnlyDataSource = GetReadOnlyDataSource(dataSources, { allowFallbackToReadWrite: false });
|
|
312
|
+
if (readOnlyDataSource) {
|
|
313
|
+
const roProvider = new SQLServerDataProvider();
|
|
314
|
+
const rConfig = new SQLServerProviderConfigData(readOnlyDataSource, mj_core_schema, 0, undefined, undefined, false);
|
|
315
|
+
await roProvider.Config(rConfig);
|
|
316
|
+
return roProvider;
|
|
222
317
|
}
|
|
223
318
|
}
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
type: 'Read-Write'
|
|
227
|
-
}];
|
|
228
|
-
if (rp) {
|
|
229
|
-
providers.push({
|
|
230
|
-
provider: rp,
|
|
231
|
-
type: 'Read-Only'
|
|
232
|
-
});
|
|
319
|
+
catch (_err) {
|
|
320
|
+
// no read only data source available, this is OK
|
|
233
321
|
}
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
dataSources,
|
|
237
|
-
userPayload: userPayload,
|
|
238
|
-
providers,
|
|
239
|
-
};
|
|
240
|
-
return contextResult;
|
|
241
|
-
};
|
|
322
|
+
return null;
|
|
323
|
+
}
|
|
242
324
|
//# sourceMappingURL=context.js.map
|
package/dist/context.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.js","sourceRoot":"","sources":["../src/context.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"context.js","sourceRoot":"","sources":["../src/context.ts"],"names":[],"mappings":"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"}
|