@boxyhq/saml-jackson 1.11.1 → 1.11.3

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.
@@ -40,11 +40,117 @@ const dbutils = __importStar(require("../db/utils"));
40
40
  const utils_1 = require("./utils");
41
41
  const crypto_1 = __importDefault(require("crypto"));
42
42
  const error_1 = require("./error");
43
+ const throwIfInvalidService = (service) => {
44
+ if (!['sso', 'dsync'].includes(service)) {
45
+ throw new error_1.JacksonError('Invalid service provided. Supported values are: sso, dsync', 400);
46
+ }
47
+ };
48
+ /**
49
+ * @swagger
50
+ * definitions:
51
+ * SetupLink:
52
+ * type: object
53
+ * properties:
54
+ * setupID:
55
+ * type: string
56
+ * description: Setup link ID
57
+ * tenant:
58
+ * type: string
59
+ * description: Tenant
60
+ * product:
61
+ * type: string
62
+ * description: Product
63
+ * validTill:
64
+ * type: string
65
+ * description: Valid till timestamp
66
+ * url:
67
+ * type: string
68
+ * description: Setup link URL
69
+ */
43
70
  class SetupLinkController {
44
71
  constructor({ setupLinkStore }) {
45
72
  this.setupLinkStore = setupLinkStore;
46
73
  }
47
- // Create a new setup link
74
+ /**
75
+ * @swagger
76
+ * definitions:
77
+ * SetupLink:
78
+ * type: object
79
+ * example:
80
+ * {
81
+ * "data": {
82
+ * "setupID": "0689f76f7b5aa22f00381a124cb4b153fc1a8c08",
83
+ * "tenant": "acme",
84
+ * "product": "my-app",
85
+ * "service": "sso",
86
+ * "validTill": 1689849146690,
87
+ * "url": "http://localhost:5225/setup/0b96a483ebfe0af0b561dda35a96647074d944631ff9e070"
88
+ * }
89
+ * }
90
+ * parameters:
91
+ * tenantParamPost:
92
+ * name: tenant
93
+ * description: Tenant
94
+ * in: formData
95
+ * required: true
96
+ * type: string
97
+ * productParamPost:
98
+ * name: product
99
+ * description: Product
100
+ * in: formData
101
+ * required: true
102
+ * type: string
103
+ * defaultRedirectUrlParamPost:
104
+ * name: defaultRedirectUrl
105
+ * description: The redirect URL to use in the IdP login flow
106
+ * in: formData
107
+ * type: string
108
+ * required: true
109
+ * redirectUrlParamPost:
110
+ * name: redirectUrl
111
+ * description: JSON encoded array containing a list of allowed redirect URLs
112
+ * in: formData
113
+ * type: string
114
+ * required: true
115
+ * /api/v1/sso/setuplinks:
116
+ * post:
117
+ * summary: Create a Setup Link
118
+ * operationId: create-sso-setup-link
119
+ * tags: [Setup Links | Single Sign On]
120
+ * produces:
121
+ * - application/json
122
+ * consumes:
123
+ * - application/x-www-form-urlencoded
124
+ * - application/json
125
+ * parameters:
126
+ * - $ref: '#/parameters/tenantParamPost'
127
+ * - $ref: '#/parameters/productParamPost'
128
+ * - $ref: '#/parameters/defaultRedirectUrlParamPost'
129
+ * - $ref: '#/parameters/redirectUrlParamPost'
130
+ * responses:
131
+ * 200:
132
+ * description: Success
133
+ * schema:
134
+ * $ref: '#/definitions/SetupLink'
135
+ * /api/v1/dsync/setuplinks:
136
+ * post:
137
+ * summary: Create a Setup Link
138
+ * operationId: create-dsync-setup-link
139
+ * tags: [Setup Links | Directory Sync]
140
+ * produces:
141
+ * - application/json
142
+ * consumes:
143
+ * - application/x-www-form-urlencoded
144
+ * - application/json
145
+ * parameters:
146
+ * - $ref: '#/parameters/tenantParamPost'
147
+ * - $ref: '#/parameters/productParamPost'
148
+ * responses:
149
+ * 200:
150
+ * description: Success
151
+ * schema:
152
+ * $ref: '#/definitions/SetupLink'
153
+ */
48
154
  create(body) {
49
155
  return __awaiter(this, void 0, void 0, function* () {
50
156
  const { tenant, product, service, name, description, defaultRedirectUrl, regenerate, redirectUrl } = body;
@@ -53,6 +159,7 @@ class SetupLinkController {
53
159
  const redirectUrlList = (0, utils_1.extractRedirectUrls)(redirectUrl || '');
54
160
  (0, utils_1.validateRedirectUrl)({ defaultRedirectUrl, redirectUrlList });
55
161
  }
162
+ throwIfInvalidService(service);
56
163
  const setupID = dbutils.keyDigest(dbutils.keyFromParts(tenant, product, service));
57
164
  const token = crypto_1.default.randomBytes(24).toString('hex');
58
165
  const existing = (yield this.setupLinkStore.getByIndex({
@@ -87,6 +194,9 @@ class SetupLinkController {
87
194
  }, {
88
195
  name: utils_1.IndexNames.Service,
89
196
  value: service,
197
+ }, {
198
+ name: utils_1.IndexNames.ProductService,
199
+ value: dbutils.keyFromParts(product, service),
90
200
  });
91
201
  return setupLink;
92
202
  });
@@ -110,33 +220,201 @@ class SetupLinkController {
110
220
  return setupLink[0];
111
221
  });
112
222
  }
113
- // Get setup links by service
114
- getByService(service, pageOffset, pageLimit, pageToken) {
223
+ /**
224
+ * @swagger
225
+ * parameters:
226
+ * setupLinkId:
227
+ * name: id
228
+ * description: Setup link ID
229
+ * in: query
230
+ * required: false
231
+ * type: string
232
+ * /api/v1/sso/setuplinks:
233
+ * delete:
234
+ * summary: Delete the Setup Link
235
+ * parameters:
236
+ * - $ref: '#/parameters/tenantParamGet'
237
+ * - $ref: '#/parameters/productParamGet'
238
+ * - $ref: '#/parameters/setupLinkId'
239
+ * operationId: delete-sso-setup-link
240
+ * tags: [Setup Links | Single Sign On]
241
+ * responses:
242
+ * 200:
243
+ * description: Success
244
+ * schema:
245
+ * type: object
246
+ * example:
247
+ * {
248
+ * data: {}
249
+ * }
250
+ * /api/v1/dsync/setuplinks:
251
+ * delete:
252
+ * summary: Delete the Setup Link
253
+ * parameters:
254
+ * - $ref: '#/parameters/tenantParamGet'
255
+ * - $ref: '#/parameters/productParamGet'
256
+ * - $ref: '#/parameters/setupLinkId'
257
+ * operationId: delete-dsync-setup-link
258
+ * tags: [Setup Links | Directory Sync]
259
+ * responses:
260
+ * 200:
261
+ * description: Success
262
+ * schema:
263
+ * type: object
264
+ * example:
265
+ * {
266
+ * data: {}
267
+ * }
268
+ */
269
+ remove(params) {
115
270
  return __awaiter(this, void 0, void 0, function* () {
116
- if (!service) {
117
- throw new error_1.JacksonError('Missing service name', 400);
271
+ if ('id' in params) {
272
+ yield this.setupLinkStore.delete(params.id);
273
+ return;
118
274
  }
119
- const { data: setupLinks, pageToken: nextPageToken } = yield this.setupLinkStore.getByIndex({
120
- name: utils_1.IndexNames.Service,
121
- value: service,
122
- }, pageOffset, pageLimit, pageToken);
123
- return { data: setupLinks, pageToken: nextPageToken };
124
- });
125
- }
126
- // Remove a setup link
127
- remove(key) {
128
- return __awaiter(this, void 0, void 0, function* () {
129
- if (!key) {
130
- throw new error_1.JacksonError('Missing setup link key', 400);
275
+ if ('service' in params && 'tenant' in params && 'product' in params) {
276
+ const { data: setupLinks } = yield this.filterBy({
277
+ service: params.service,
278
+ tenant: params.tenant,
279
+ product: params.product,
280
+ });
281
+ yield this.remove({ id: setupLinks[0].setupID });
131
282
  }
132
- yield this.setupLinkStore.delete(key);
133
- return true;
134
283
  });
135
284
  }
136
285
  // Check if a setup link is expired or not
137
286
  isExpired(setupLink) {
138
287
  return setupLink.validTill < +new Date();
139
288
  }
289
+ /**
290
+ * @swagger
291
+ * parameters:
292
+ * tenantParamGet:
293
+ * name: tenant
294
+ * description: Tenant
295
+ * in: query
296
+ * required: true
297
+ * type: string
298
+ * productParamGet:
299
+ * name: product
300
+ * description: Product
301
+ * in: query
302
+ * required: true
303
+ * type: string
304
+ * /api/v1/sso/setuplinks/product:
305
+ * get:
306
+ * summary: Get the Setup Links by product
307
+ * parameters:
308
+ * - $ref: '#/parameters/productParamGet'
309
+ * operationId: get-sso-setup-link-by-product
310
+ * tags: [Setup Links | Single Sign On]
311
+ * responses:
312
+ * 200:
313
+ * description: Success
314
+ * schema:
315
+ * type: array
316
+ * items:
317
+ * $ref: '#/definitions/SetupLink'
318
+ * /api/v1/dsync/setuplinks/product:
319
+ * get:
320
+ * summary: Get the Setup Links by product
321
+ * parameters:
322
+ * - $ref: '#/parameters/productParamGet'
323
+ * operationId: get-dsync-setup-link-by-product
324
+ * tags: [Setup Links | Directory Sync]
325
+ * responses:
326
+ * 200:
327
+ * description: Success
328
+ * schema:
329
+ * type: array
330
+ * items:
331
+ * $ref: '#/definitions/SetupLink'
332
+ */
333
+ filterBy(params) {
334
+ return __awaiter(this, void 0, void 0, function* () {
335
+ const { tenant, product, service, pageOffset, pageLimit, pageToken } = params;
336
+ let index = null;
337
+ // By tenant + product + service
338
+ if (tenant && product && service) {
339
+ index = {
340
+ name: utils_1.IndexNames.TenantProductService,
341
+ value: dbutils.keyFromParts(tenant, product, service),
342
+ };
343
+ }
344
+ // By product + service
345
+ else if (product && service) {
346
+ index = {
347
+ name: utils_1.IndexNames.ProductService,
348
+ value: dbutils.keyFromParts(product, service),
349
+ };
350
+ }
351
+ // By service
352
+ else if (service) {
353
+ index = {
354
+ name: utils_1.IndexNames.Service,
355
+ value: service,
356
+ };
357
+ }
358
+ if (!index) {
359
+ throw new error_1.JacksonError('Please provide either service or product to filter setup links', 400);
360
+ }
361
+ const { data: setupLinks, pageToken: nextPageToken } = yield this.setupLinkStore.getByIndex(index, pageOffset, pageLimit, pageToken);
362
+ if (index.name === utils_1.IndexNames.TenantProductService && setupLinks.length === 0) {
363
+ throw new error_1.JacksonError('Setup link is not found', 404);
364
+ }
365
+ return { data: setupLinks, pageToken: nextPageToken };
366
+ });
367
+ }
368
+ /**
369
+ * @swagger
370
+ * parameters:
371
+ * idParamGet:
372
+ * name: id
373
+ * description: Setup Link ID
374
+ * in: query
375
+ * required: false
376
+ * type: string
377
+ * /api/v1/sso/setuplinks:
378
+ * get:
379
+ * summary: Get the Setup Link
380
+ * parameters:
381
+ * - $ref: '#/parameters/tenantParamGet'
382
+ * - $ref: '#/parameters/productParamGet'
383
+ * - $ref: '#/parameters/idParamGet'
384
+ * operationId: get-sso-setup-link
385
+ * tags: [Setup Links | Single Sign On]
386
+ * responses:
387
+ * 200:
388
+ * description: Success
389
+ * schema:
390
+ * $ref: '#/definitions/SetupLink'
391
+ * /api/v1/dsync/setuplinks:
392
+ * get:
393
+ * summary: Get the Setup Link
394
+ * parameters:
395
+ * - $ref: '#/parameters/tenantParamGet'
396
+ * - $ref: '#/parameters/productParamGet'
397
+ * - $ref: '#/parameters/idParamGet'
398
+ * operationId: get-dsync-setup-link
399
+ * tags: [Setup Links | Directory Sync]
400
+ * responses:
401
+ * 200:
402
+ * description: Success
403
+ * schema:
404
+ * $ref: '#/definitions/SetupLink'
405
+ */
406
+ get(id) {
407
+ return __awaiter(this, void 0, void 0, function* () {
408
+ if (!id) {
409
+ throw new error_1.JacksonError('Missing setup link id', 400);
410
+ }
411
+ const setupLink = yield this.setupLinkStore.get(id);
412
+ if (!setupLink) {
413
+ throw new error_1.JacksonError('Setup link is not found', 404);
414
+ }
415
+ return setupLink;
416
+ });
417
+ }
140
418
  }
141
419
  exports.SetupLinkController = SetupLinkController;
142
420
  //# sourceMappingURL=setup-link.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"setup-link.js","sourceRoot":"","sources":["../../src/controller/setup-link.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,qDAAuC;AACvC,mCAAyG;AACzG,oDAA4B;AAC5B,mCAAuC;AAEvC,MAAa,mBAAmB;IAG9B,YAAY,EAAE,cAAc,EAAE;QAC5B,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;IACvC,CAAC;IAED,0BAA0B;IACpB,MAAM,CAAC,IAA4B;;YACvC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,kBAAkB,EAAE,UAAU,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC;YAE1G,IAAA,gCAAwB,EAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YAE1C,IAAI,kBAAkB,IAAI,WAAW,EAAE;gBACrC,MAAM,eAAe,GAAG,IAAA,2BAAmB,EAAC,WAAW,IAAI,EAAE,CAAC,CAAC;gBAC/D,IAAA,2BAAmB,EAAC,EAAE,kBAAkB,EAAE,eAAe,EAAE,CAAC,CAAC;aAC9D;YAED,MAAM,OAAO,GAAG,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,YAAY,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;YAClF,MAAM,KAAK,GAAG,gBAAM,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;YAErD,MAAM,QAAQ,GAAgB,CAC5B,MAAM,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC;gBACnC,IAAI,EAAE,kBAAU,CAAC,oBAAoB;gBACrC,KAAK,EAAE,OAAO,CAAC,YAAY,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC;aACtD,CAAC,CACH,CAAC,IAAI,CAAC;YAEP,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE;gBACtE,OAAO,QAAQ,CAAC,CAAC,CAAC,CAAC;aACpB;YAED,uDAAuD;YACvD,IAAI,UAAU,EAAE;gBACd,MAAM,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;aACvD;YAED,MAAM,SAAS,GAAG;gBAChB,OAAO;gBACP,MAAM;gBACN,OAAO;gBACP,OAAO;gBACP,IAAI;gBACJ,WAAW;gBACX,WAAW;gBACX,kBAAkB;gBAClB,SAAS,EAAE,CAAC,IAAI,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;gBAClE,GAAG,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,YAAY,UAAU,KAAK,EAAE;aAClD,CAAC;YAEF,MAAM,IAAI,CAAC,cAAc,CAAC,GAAG,CAC3B,OAAO,EACP,SAAS,EACT;gBACE,IAAI,EAAE,kBAAU,CAAC,UAAU;gBAC3B,KAAK,EAAE,KAAK;aACb,EACD;gBACE,IAAI,EAAE,kBAAU,CAAC,oBAAoB;gBACrC,KAAK,EAAE,OAAO,CAAC,YAAY,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC;aACtD,EACD;gBACE,IAAI,EAAE,kBAAU,CAAC,OAAO;gBACxB,KAAK,EAAE,OAAO;aACf,CACF,CAAC;YAEF,OAAO,SAAS,CAAC;QACnB,CAAC;KAAA;IAED,4BAA4B;IACtB,UAAU,CAAC,KAAa;;YAC5B,IAAI,CAAC,KAAK,EAAE;gBACV,MAAM,IAAI,oBAAY,CAAC,0BAA0B,EAAE,GAAG,CAAC,CAAC;aACzD;YAED,MAAM,SAAS,GAAgB,CAC7B,MAAM,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC;gBACnC,IAAI,EAAE,kBAAU,CAAC,UAAU;gBAC3B,KAAK,EAAE,KAAK;aACb,CAAC,CACH,CAAC,IAAI,CAAC;YAEP,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE;gBACxC,MAAM,IAAI,oBAAY,CAAC,yBAAyB,EAAE,GAAG,CAAC,CAAC;aACxD;YAED,IAAI,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE;gBAChC,MAAM,IAAI,oBAAY,CAAC,uBAAuB,EAAE,GAAG,CAAC,CAAC;aACtD;YAED,OAAO,SAAS,CAAC,CAAC,CAAC,CAAC;QACtB,CAAC;KAAA;IAED,6BAA6B;IACvB,YAAY,CAChB,OAAe,EACf,UAAmB,EACnB,SAAkB,EAClB,SAAkB;;YAElB,IAAI,CAAC,OAAO,EAAE;gBACZ,MAAM,IAAI,oBAAY,CAAC,sBAAsB,EAAE,GAAG,CAAC,CAAC;aACrD;YAED,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,aAAa,EAAE,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,UAAU,CACzF;gBACE,IAAI,EAAE,kBAAU,CAAC,OAAO;gBACxB,KAAK,EAAE,OAAO;aACf,EACD,UAAU,EACV,SAAS,EACT,SAAS,CACV,CAAC;YAEF,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,aAAa,EAAE,CAAC;QACxD,CAAC;KAAA;IAED,sBAAsB;IAChB,MAAM,CAAC,GAAW;;YACtB,IAAI,CAAC,GAAG,EAAE;gBACR,MAAM,IAAI,oBAAY,CAAC,wBAAwB,EAAE,GAAG,CAAC,CAAC;aACvD;YAED,MAAM,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAEtC,OAAO,IAAI,CAAC;QACd,CAAC;KAAA;IAED,0CAA0C;IAC1C,SAAS,CAAC,SAAoB;QAC5B,OAAO,SAAS,CAAC,SAAS,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC;IAC3C,CAAC;CACF;AArID,kDAqIC"}
1
+ {"version":3,"file":"setup-link.js","sourceRoot":"","sources":["../../src/controller/setup-link.ts"],"names":[],"mappings":"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"}
@@ -3,13 +3,14 @@ import { Client, TokenSet } from 'openid-client';
3
3
  import type { ConnectionType, OAuthErrorHandlerParams, SAMLSSOConnectionWithEncodedMetadata, SAMLSSOConnectionWithRawMetadata, OIDCSSOConnectionWithDiscoveryUrl, OIDCSSOConnectionWithMetadata, Profile, SAMLSSORecord, OIDCSSORecord, Directory } from '../typings';
4
4
  export declare enum IndexNames {
5
5
  EntityID = "entityID",
6
- SetupToken = "token",
7
6
  TenantProduct = "tenantProduct",
8
- TenantProductService = "tenantProductService",
9
- Service = "service",
10
7
  OIDCProviderClientID = "OIDCProviderClientID",
11
8
  SSOClientID = "SSOClientID",
12
- Product = "product"
9
+ Product = "product",
10
+ Service = "service",
11
+ SetupToken = "token",
12
+ ProductService = "productService",
13
+ TenantProductService = "tenantProductService"
13
14
  }
14
15
  export declare const storeNamespacePrefix: {
15
16
  dsync: {
@@ -44,13 +44,15 @@ const redirect = __importStar(require("./oauth/redirect"));
44
44
  var IndexNames;
45
45
  (function (IndexNames) {
46
46
  IndexNames["EntityID"] = "entityID";
47
- IndexNames["SetupToken"] = "token";
48
47
  IndexNames["TenantProduct"] = "tenantProduct";
49
- IndexNames["TenantProductService"] = "tenantProductService";
50
- IndexNames["Service"] = "service";
51
48
  IndexNames["OIDCProviderClientID"] = "OIDCProviderClientID";
52
49
  IndexNames["SSOClientID"] = "SSOClientID";
53
50
  IndexNames["Product"] = "product";
51
+ // For Setup link
52
+ IndexNames["Service"] = "service";
53
+ IndexNames["SetupToken"] = "token";
54
+ IndexNames["ProductService"] = "productService";
55
+ IndexNames["TenantProductService"] = "tenantProductService";
54
56
  })(IndexNames || (exports.IndexNames = IndexNames = {}));
55
57
  // The namespace prefix for the database store
56
58
  exports.storeNamespacePrefix = {
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/controller/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/controller/utils.ts"],"names":[],"mappings":"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"}