@boxyhq/saml-jackson 1.16.2 → 1.17.1

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,10 +1,10 @@
1
1
  import { IAdminController, SAMLSSORecord, OIDCSSORecord, Records, Trace } from '../typings';
2
2
  export declare class AdminController implements IAdminController {
3
3
  private connectionStore;
4
- private samlTracer;
5
- constructor({ connectionStore, samlTracer }: {
4
+ private ssoTracer;
5
+ constructor({ connectionStore, ssoTracer }: {
6
6
  connectionStore: any;
7
- samlTracer: any;
7
+ ssoTracer: any;
8
8
  });
9
9
  getAllConnection(pageOffset?: number, pageLimit?: number, pageToken?: string): Promise<{
10
10
  data: never[];
@@ -13,13 +13,13 @@ export declare class AdminController implements IAdminController {
13
13
  data: (SAMLSSORecord | OIDCSSORecord)[];
14
14
  pageToken: string | undefined;
15
15
  }>;
16
- getAllSAMLTraces(pageOffset: number, pageLimit: number, pageToken?: string): Promise<{
16
+ getAllSSOTraces(pageOffset: number, pageLimit: number, pageToken?: string): Promise<{
17
17
  data: never[];
18
18
  pageToken?: undefined;
19
19
  } | {
20
20
  data: Trace[];
21
21
  pageToken: string | undefined;
22
22
  }>;
23
- getSAMLTraceById(traceId: string): Promise<Trace>;
23
+ getSSOTraceById(traceId: string): Promise<Trace>;
24
24
  getTracesByProduct(product: string, pageOffset: number, pageLimit: number, pageToken?: string): Promise<Records<any>>;
25
25
  }
@@ -13,9 +13,9 @@ exports.AdminController = void 0;
13
13
  const error_1 = require("./error");
14
14
  const utils_1 = require("./utils");
15
15
  class AdminController {
16
- constructor({ connectionStore, samlTracer }) {
16
+ constructor({ connectionStore, ssoTracer }) {
17
17
  this.connectionStore = connectionStore;
18
- this.samlTracer = samlTracer;
18
+ this.ssoTracer = ssoTracer;
19
19
  }
20
20
  getAllConnection(pageOffset, pageLimit, pageToken) {
21
21
  return __awaiter(this, void 0, void 0, function* () {
@@ -26,18 +26,18 @@ class AdminController {
26
26
  return { data: (0, utils_1.transformConnections)(connectionList), pageToken: nextPageToken };
27
27
  });
28
28
  }
29
- getAllSAMLTraces(pageOffset, pageLimit, pageToken) {
29
+ getAllSSOTraces(pageOffset, pageLimit, pageToken) {
30
30
  return __awaiter(this, void 0, void 0, function* () {
31
- const { data: traces, pageToken: nextPageToken } = (yield this.samlTracer.getAllTraces(pageOffset, pageLimit, pageToken));
31
+ const { data: traces, pageToken: nextPageToken } = (yield this.ssoTracer.getAllTraces(pageOffset, pageLimit, pageToken));
32
32
  if (!traces || !traces.length) {
33
33
  return { data: [] };
34
34
  }
35
35
  return { data: traces, pageToken: nextPageToken };
36
36
  });
37
37
  }
38
- getSAMLTraceById(traceId) {
38
+ getSSOTraceById(traceId) {
39
39
  return __awaiter(this, void 0, void 0, function* () {
40
- const trace = yield this.samlTracer.getByTraceId(traceId);
40
+ const trace = yield this.ssoTracer.getByTraceId(traceId);
41
41
  if (!trace) {
42
42
  throw new error_1.JacksonError(`Trace with id ${traceId} not found`, 404);
43
43
  }
@@ -46,7 +46,7 @@ class AdminController {
46
46
  }
47
47
  getTracesByProduct(product, pageOffset, pageLimit, pageToken) {
48
48
  return __awaiter(this, void 0, void 0, function* () {
49
- return yield this.samlTracer.getTracesByProduct({ product, pageOffset, pageLimit, pageToken });
49
+ return yield this.ssoTracer.getTracesByProduct({ product, pageOffset, pageLimit, pageToken });
50
50
  });
51
51
  }
52
52
  }
@@ -1 +1 @@
1
- {"version":3,"file":"admin.js","sourceRoot":"","sources":["../../src/controller/admin.ts"],"names":[],"mappings":";;;;;;;;;;;;AASA,mCAAuC;AACvC,mCAA+C;AAE/C,MAAa,eAAe;IAI1B,YAAY,EAAE,eAAe,EAAE,UAAU,EAAE;QACzC,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;QACvC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IAC/B,CAAC;IAEY,gBAAgB,CAAC,UAAmB,EAAE,SAAkB,EAAE,SAAkB;;YACvF,MAAM,EAAE,IAAI,EAAE,cAAc,EAAE,SAAS,EAAE,aAAa,EAAE,GAAG,CAAC,MAAM,IAAI,CAAC,eAAe,CAAC,MAAM,CAC3F,UAAU,EACV,SAAS,EACT,SAAS,CACV,CAA2C,CAAC;YAE7C,IAAI,CAAC,cAAc,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC;gBAC9C,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;YACtB,CAAC;YAED,OAAO,EAAE,IAAI,EAAE,IAAA,4BAAoB,EAAC,cAAc,CAAC,EAAE,SAAS,EAAE,aAAa,EAAE,CAAC;QAClF,CAAC;KAAA;IAEY,gBAAgB,CAAC,UAAkB,EAAE,SAAiB,EAAE,SAAkB;;YACrF,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,aAAa,EAAE,GAAG,CAAC,MAAM,IAAI,CAAC,UAAU,CAAC,YAAY,CACpF,UAAU,EACV,SAAS,EACT,SAAS,CACV,CAAmB,CAAC;YAErB,IAAI,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;gBAC9B,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;YACtB,CAAC;YAED,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,aAAa,EAAE,CAAC;QACpD,CAAC;KAAA;IAEY,gBAAgB,CAAC,OAAe;;YAC3C,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;YAE1D,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,MAAM,IAAI,oBAAY,CAAC,iBAAiB,OAAO,YAAY,EAAE,GAAG,CAAC,CAAC;YACpE,CAAC;YAED,OAAO,KAAK,CAAC;QACf,CAAC;KAAA;IAEY,kBAAkB,CAC7B,OAAe,EACf,UAAkB,EAClB,SAAiB,EACjB,SAAkB;;YAElB,OAAO,MAAM,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,CAAC;QACjG,CAAC;KAAA;CACF;AAvDD,0CAuDC"}
1
+ {"version":3,"file":"admin.js","sourceRoot":"","sources":["../../src/controller/admin.ts"],"names":[],"mappings":";;;;;;;;;;;;AASA,mCAAuC;AACvC,mCAA+C;AAE/C,MAAa,eAAe;IAI1B,YAAY,EAAE,eAAe,EAAE,SAAS,EAAE;QACxC,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;QACvC,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC7B,CAAC;IAEY,gBAAgB,CAAC,UAAmB,EAAE,SAAkB,EAAE,SAAkB;;YACvF,MAAM,EAAE,IAAI,EAAE,cAAc,EAAE,SAAS,EAAE,aAAa,EAAE,GAAG,CAAC,MAAM,IAAI,CAAC,eAAe,CAAC,MAAM,CAC3F,UAAU,EACV,SAAS,EACT,SAAS,CACV,CAA2C,CAAC;YAE7C,IAAI,CAAC,cAAc,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC;gBAC9C,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;YACtB,CAAC;YAED,OAAO,EAAE,IAAI,EAAE,IAAA,4BAAoB,EAAC,cAAc,CAAC,EAAE,SAAS,EAAE,aAAa,EAAE,CAAC;QAClF,CAAC;KAAA;IAEY,eAAe,CAAC,UAAkB,EAAE,SAAiB,EAAE,SAAkB;;YACpF,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,aAAa,EAAE,GAAG,CAAC,MAAM,IAAI,CAAC,SAAS,CAAC,YAAY,CACnF,UAAU,EACV,SAAS,EACT,SAAS,CACV,CAAmB,CAAC;YAErB,IAAI,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;gBAC9B,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;YACtB,CAAC;YAED,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,aAAa,EAAE,CAAC;QACpD,CAAC;KAAA;IAEY,eAAe,CAAC,OAAe;;YAC1C,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;YAEzD,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,MAAM,IAAI,oBAAY,CAAC,iBAAiB,OAAO,YAAY,EAAE,GAAG,CAAC,CAAC;YACpE,CAAC;YAED,OAAO,KAAK,CAAC;QACf,CAAC;KAAA;IAEY,kBAAkB,CAC7B,OAAe,EACf,UAAkB,EAClB,SAAiB,EACjB,SAAkB;;YAElB,OAAO,MAAM,IAAI,CAAC,SAAS,CAAC,kBAAkB,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,CAAC;QAChG,CAAC;KAAA;CACF;AAvDD,0CAuDC"}
@@ -4,15 +4,15 @@ export declare class OAuthController implements IOAuthController {
4
4
  private sessionStore;
5
5
  private codeStore;
6
6
  private tokenStore;
7
- private samlTracer;
7
+ private ssoTracer;
8
8
  private opts;
9
- private samlHandler;
10
- constructor({ connectionStore, sessionStore, codeStore, tokenStore, samlTracer, opts }: {
9
+ private ssoHandler;
10
+ constructor({ connectionStore, sessionStore, codeStore, tokenStore, ssoTracer, opts }: {
11
11
  connectionStore: any;
12
12
  sessionStore: any;
13
13
  codeStore: any;
14
14
  tokenStore: any;
15
- samlTracer: any;
15
+ ssoTracer: any;
16
16
  opts: any;
17
17
  });
18
18
  authorize(body: OAuthReq): Promise<{
@@ -26,6 +26,7 @@ export declare class OAuthController implements IOAuthController {
26
26
  }>;
27
27
  oidcAuthzResponse(body: OIDCAuthzResponsePayload): Promise<{
28
28
  redirect_url?: string;
29
+ response_form?: string;
29
30
  }>;
30
31
  private _buildAuthorizationCode;
31
32
  /**
@@ -49,19 +49,19 @@ const allowed = __importStar(require("./oauth/allowed"));
49
49
  const codeVerifier = __importStar(require("./oauth/code-verifier"));
50
50
  const redirect = __importStar(require("./oauth/redirect"));
51
51
  const x509_1 = require("../saml/x509");
52
- const saml_handler_1 = require("./saml-handler");
52
+ const sso_handler_1 = require("./sso-handler");
53
53
  const lib_1 = require("../saml/lib");
54
54
  const oidc_issuer_1 = require("./oauth/oidc-issuer");
55
55
  const deflateRawAsync = (0, util_1.promisify)(zlib_1.deflateRaw);
56
56
  class OAuthController {
57
- constructor({ connectionStore, sessionStore, codeStore, tokenStore, samlTracer, opts }) {
57
+ constructor({ connectionStore, sessionStore, codeStore, tokenStore, ssoTracer, opts }) {
58
58
  this.connectionStore = connectionStore;
59
59
  this.sessionStore = sessionStore;
60
60
  this.codeStore = codeStore;
61
61
  this.tokenStore = tokenStore;
62
- this.samlTracer = samlTracer;
62
+ this.ssoTracer = ssoTracer;
63
63
  this.opts = opts;
64
- this.samlHandler = new saml_handler_1.SAMLHandler({
64
+ this.ssoHandler = new sso_handler_1.SSOHandler({
65
65
  connection: connectionStore,
66
66
  session: sessionStore,
67
67
  opts,
@@ -90,7 +90,7 @@ class OAuthController {
90
90
  requestedScopes = (0, utils_1.getScopeValues)(scope);
91
91
  requestedOIDCFlow = requestedScopes.includes('openid');
92
92
  if (tenant && product) {
93
- const response = yield this.samlHandler.resolveConnection({
93
+ const response = yield this.ssoHandler.resolveConnection({
94
94
  tenant,
95
95
  product,
96
96
  idp_hint,
@@ -125,7 +125,7 @@ class OAuthController {
125
125
  const { tenant, product } = sp;
126
126
  requestedTenant = tenant;
127
127
  requestedProduct = product;
128
- const response = yield this.samlHandler.resolveConnection({
128
+ const response = yield this.ssoHandler.resolveConnection({
129
129
  tenant,
130
130
  product,
131
131
  idp_hint,
@@ -162,7 +162,7 @@ class OAuthController {
162
162
  catch (err) {
163
163
  const error_description = (0, utils_1.getErrorMessage)(err);
164
164
  // Save the error trace
165
- yield this.samlTracer.saveTrace({
165
+ yield this.ssoTracer.saveTrace({
166
166
  error: error_description,
167
167
  context: {
168
168
  tenant: requestedTenant || '',
@@ -202,7 +202,7 @@ class OAuthController {
202
202
  error_description = 'Connection appears to be misconfigured';
203
203
  }
204
204
  // Save the error trace
205
- const traceId = yield this.samlTracer.saveTrace({
205
+ const traceId = yield this.ssoTracer.saveTrace({
206
206
  error: error_description,
207
207
  context: {
208
208
  tenant: requestedTenant,
@@ -245,7 +245,7 @@ class OAuthController {
245
245
  // This code here is kept for backward compatibility. We now have validation while adding the SSO connection to ensure binding is present.
246
246
  const error_description = 'SAML binding could not be retrieved';
247
247
  // Save the error trace
248
- const traceId = yield this.samlTracer.saveTrace({
248
+ const traceId = yield this.ssoTracer.saveTrace({
249
249
  error: error_description,
250
250
  context: {
251
251
  tenant: requestedTenant,
@@ -280,7 +280,7 @@ class OAuthController {
280
280
  catch (err) {
281
281
  const error_description = (0, utils_1.getErrorMessage)(err);
282
282
  // Save the error trace
283
- const traceId = yield this.samlTracer.saveTrace({
283
+ const traceId = yield this.ssoTracer.saveTrace({
284
284
  error: error_description,
285
285
  context: {
286
286
  tenant: requestedTenant,
@@ -418,7 +418,7 @@ class OAuthController {
418
418
  catch (err) {
419
419
  const error_description = (0, utils_1.getErrorMessage)(err);
420
420
  // Save the error trace
421
- const traceId = yield this.samlTracer.saveTrace({
421
+ const traceId = yield this.ssoTracer.saveTrace({
422
422
  error: error_description,
423
423
  context: {
424
424
  tenant: requestedTenant,
@@ -441,7 +441,7 @@ class OAuthController {
441
441
  });
442
442
  }
443
443
  samlResponse(body) {
444
- var _a;
444
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j;
445
445
  return __awaiter(this, void 0, void 0, function* () {
446
446
  let connection;
447
447
  let rawResponse;
@@ -480,7 +480,7 @@ class OAuthController {
480
480
  const isSPFlow = !isIdPFlow && !isSAMLFederated;
481
481
  // IdP initiated SSO flow
482
482
  if (isIdPFlow) {
483
- const response = yield this.samlHandler.resolveConnection({
483
+ const response = yield this.ssoHandler.resolveConnection({
484
484
  idp_hint,
485
485
  authFlow: 'idp-initiated',
486
486
  entityId: issuer,
@@ -533,17 +533,21 @@ class OAuthController {
533
533
  }
534
534
  catch (err) {
535
535
  // Save the error trace
536
- yield this.samlTracer.saveTrace({
536
+ yield this.ssoTracer.saveTrace({
537
537
  error: (0, utils_1.getErrorMessage)(err),
538
538
  context: {
539
539
  samlResponse: rawResponse,
540
- tenant: (connection === null || connection === void 0 ? void 0 : connection.tenant) || '',
541
- product: (connection === null || connection === void 0 ? void 0 : connection.product) || '',
542
- clientID: (connection === null || connection === void 0 ? void 0 : connection.clientID) || '',
540
+ tenant: ((_a = session === null || session === void 0 ? void 0 : session.requested) === null || _a === void 0 ? void 0 : _a.tenant) || (connection === null || connection === void 0 ? void 0 : connection.tenant),
541
+ product: ((_b = session === null || session === void 0 ? void 0 : session.requested) === null || _b === void 0 ? void 0 : _b.product) || (connection === null || connection === void 0 ? void 0 : connection.product),
542
+ clientID: ((_c = session === null || session === void 0 ? void 0 : session.requested) === null || _c === void 0 ? void 0 : _c.client_id) || (connection === null || connection === void 0 ? void 0 : connection.clientID),
543
+ providerName: (_d = connection === null || connection === void 0 ? void 0 : connection.idpMetadata) === null || _d === void 0 ? void 0 : _d.provider,
543
544
  redirectUri: isIdPFlow ? connection === null || connection === void 0 ? void 0 : connection.defaultRedirectUrl : session === null || session === void 0 ? void 0 : session.redirect_uri,
544
- issuer: issuer || '',
545
+ issuer,
545
546
  isSAMLFederated: !!isSAMLFederated,
546
547
  isIdPFlow: !!isIdPFlow,
548
+ requestedOIDCFlow: !!((_e = session === null || session === void 0 ? void 0 : session.requested) === null || _e === void 0 ? void 0 : _e.oidc),
549
+ acsUrl: (_f = session === null || session === void 0 ? void 0 : session.requested) === null || _f === void 0 ? void 0 : _f.acsUrl,
550
+ entityId: (_g = session === null || session === void 0 ? void 0 : session.requested) === null || _g === void 0 ? void 0 : _g.entityId,
547
551
  relayState: RelayState,
548
552
  },
549
553
  });
@@ -554,7 +558,7 @@ class OAuthController {
554
558
  profile = yield (0, lib_1.extractSAMLResponseAttributes)(rawResponse, validateOpts);
555
559
  // This is a federated SAML flow, let's create a new SAMLResponse and POST it to the SP
556
560
  if (isSAMLFederated) {
557
- const { responseForm } = yield this.samlHandler.createSAMLResponse({ profile, session });
561
+ const { responseForm } = yield this.ssoHandler.createSAMLResponse({ profile, session });
558
562
  yield this.sessionStore.delete(sessionId);
559
563
  return { response_form: responseForm };
560
564
  }
@@ -571,16 +575,20 @@ class OAuthController {
571
575
  catch (err) {
572
576
  const error_description = (0, utils_1.getErrorMessage)(err);
573
577
  // Trace the error
574
- const traceId = yield this.samlTracer.saveTrace({
578
+ const traceId = yield this.ssoTracer.saveTrace({
575
579
  error: error_description,
576
580
  context: {
577
581
  samlResponse: rawResponse,
578
582
  tenant: connection.tenant,
579
583
  product: connection.product,
580
584
  clientID: connection.clientID,
585
+ providerName: (_h = connection === null || connection === void 0 ? void 0 : connection.idpMetadata) === null || _h === void 0 ? void 0 : _h.provider,
581
586
  redirectUri: isIdPFlow ? connection === null || connection === void 0 ? void 0 : connection.defaultRedirectUrl : session === null || session === void 0 ? void 0 : session.redirect_uri,
582
587
  isSAMLFederated,
583
588
  isIdPFlow,
589
+ acsUrl: session.requested.acsUrl,
590
+ entityId: session.requested.entityId,
591
+ requestedOIDCFlow: !!session.requested.oidc,
584
592
  relayState: RelayState,
585
593
  issuer,
586
594
  profile,
@@ -594,32 +602,67 @@ class OAuthController {
594
602
  error: 'access_denied',
595
603
  error_description: traceId ? `${traceId}: ${error_description}` : error_description,
596
604
  redirect_uri,
597
- state: (_a = session.requested) === null || _a === void 0 ? void 0 : _a.state,
605
+ state: (_j = session.requested) === null || _j === void 0 ? void 0 : _j.state,
598
606
  }),
599
607
  };
600
608
  }
601
609
  });
602
610
  }
603
611
  oidcAuthzResponse(body) {
612
+ var _a, _b, _c, _d, _e, _f, _g;
604
613
  return __awaiter(this, void 0, void 0, function* () {
614
+ let oidcConnection;
615
+ let session;
616
+ let isSAMLFederated;
617
+ let redirect_uri;
618
+ let profile;
605
619
  const callbackParams = body;
606
620
  let RelayState = callbackParams.state || '';
607
- if (!RelayState) {
608
- throw new error_1.JacksonError('State from original request is missing.', 403);
609
- }
610
- RelayState = RelayState.replace(utils_1.relayStatePrefix, '');
611
- const session = yield this.sessionStore.get(RelayState);
612
- if (!session) {
613
- throw new error_1.JacksonError('Unable to validate state from the original request.', 403);
621
+ try {
622
+ if (!RelayState) {
623
+ throw new error_1.JacksonError('State from original request is missing.', 403);
624
+ }
625
+ RelayState = RelayState.replace(utils_1.relayStatePrefix, '');
626
+ session = yield this.sessionStore.get(RelayState);
627
+ if (!session) {
628
+ throw new error_1.JacksonError('Unable to validate state from the original request.', 403);
629
+ }
630
+ isSAMLFederated = session && 'samlFederated' in session;
631
+ oidcConnection = yield this.connectionStore.get(session.id);
632
+ if (!oidcConnection) {
633
+ throw new error_1.JacksonError('OIDC connection not found.', 403);
634
+ }
635
+ if (!isSAMLFederated) {
636
+ redirect_uri = session && session.redirect_uri;
637
+ if (!redirect_uri) {
638
+ throw new error_1.JacksonError('Redirect URL from the authorization request could not be retrieved', 403);
639
+ }
640
+ if (redirect_uri && !allowed.redirect(redirect_uri, oidcConnection.redirectUrl)) {
641
+ throw new error_1.JacksonError('Redirect URL is not allowed.', 403);
642
+ }
643
+ }
614
644
  }
615
- const oidcConnection = yield this.connectionStore.get(session.id);
616
- if (session.redirect_uri && !allowed.redirect(session.redirect_uri, oidcConnection.redirectUrl)) {
617
- throw new error_1.JacksonError('Redirect URL is not allowed.', 403);
645
+ catch (err) {
646
+ yield this.ssoTracer.saveTrace({
647
+ error: (0, utils_1.getErrorMessage)(err),
648
+ context: {
649
+ tenant: ((_a = session === null || session === void 0 ? void 0 : session.requested) === null || _a === void 0 ? void 0 : _a.tenant) || (oidcConnection === null || oidcConnection === void 0 ? void 0 : oidcConnection.tenant),
650
+ product: ((_b = session === null || session === void 0 ? void 0 : session.requested) === null || _b === void 0 ? void 0 : _b.product) || (oidcConnection === null || oidcConnection === void 0 ? void 0 : oidcConnection.product),
651
+ clientID: ((_c = session === null || session === void 0 ? void 0 : session.requested) === null || _c === void 0 ? void 0 : _c.client_id) || (oidcConnection === null || oidcConnection === void 0 ? void 0 : oidcConnection.clientID),
652
+ providerName: (_d = oidcConnection === null || oidcConnection === void 0 ? void 0 : oidcConnection.oidcProvider) === null || _d === void 0 ? void 0 : _d.provider,
653
+ acsUrl: (_e = session === null || session === void 0 ? void 0 : session.requested) === null || _e === void 0 ? void 0 : _e.acsUrl,
654
+ entityId: (_f = session === null || session === void 0 ? void 0 : session.requested) === null || _f === void 0 ? void 0 : _f.entityId,
655
+ redirectUri: redirect_uri,
656
+ relayState: RelayState,
657
+ isSAMLFederated: !!isSAMLFederated,
658
+ requestedOIDCFlow: !!((_g = session === null || session === void 0 ? void 0 : session.requested) === null || _g === void 0 ? void 0 : _g.oidc),
659
+ },
660
+ });
661
+ // Rethrow err and redirect to Jackson error page
662
+ throw err;
618
663
  }
619
- const redirect_uri = (session && session.redirect_uri) || oidcConnection.defaultRedirectUrl;
620
- // Reconstruct the oidcClient
664
+ // Reconstruct the oidcClient, code exchange for token and user profile happens here
621
665
  const { discoveryUrl, metadata, clientId, clientSecret } = oidcConnection.oidcProvider;
622
- let profile;
623
666
  try {
624
667
  const oidcIssuer = yield (0, oidc_issuer_1.oidcIssuerInstance)(discoveryUrl, metadata);
625
668
  const oidcClient = new oidcIssuer.Client({
@@ -634,30 +677,51 @@ class OAuthController {
634
677
  state: callbackParams.state,
635
678
  });
636
679
  profile = yield (0, utils_1.extractOIDCUserProfile)(tokenSet, oidcClient);
680
+ if (isSAMLFederated) {
681
+ const { responseForm } = yield this.ssoHandler.createSAMLResponse({ profile, session });
682
+ yield this.sessionStore.delete(RelayState);
683
+ return { response_form: responseForm };
684
+ }
685
+ const code = yield this._buildAuthorizationCode(oidcConnection, profile, session, false);
686
+ const params = {
687
+ code,
688
+ };
689
+ if (session && session.state) {
690
+ params['state'] = session.state;
691
+ }
692
+ yield this.sessionStore.delete(RelayState);
693
+ return { redirect_url: redirect.success(redirect_uri, params) };
637
694
  }
638
695
  catch (err) {
639
- if (err) {
640
- const { error, error_description } = err;
641
- return {
642
- redirect_url: (0, utils_1.OAuthErrorResponse)({
643
- error: error || 'server_error',
644
- error_description: error_description || (0, utils_1.getErrorMessage)(err),
645
- redirect_uri,
646
- state: session.state,
647
- }),
648
- };
696
+ const { error, error_description = (0, utils_1.getErrorMessage)(err) } = err;
697
+ const traceId = yield this.ssoTracer.saveTrace({
698
+ error: error || error_description,
699
+ context: {
700
+ tenant: oidcConnection.tenant,
701
+ product: oidcConnection.product,
702
+ clientID: oidcConnection.clientID,
703
+ providerName: oidcConnection.oidcProvider.provider,
704
+ redirectUri: redirect_uri,
705
+ relayState: RelayState,
706
+ isSAMLFederated: !!isSAMLFederated,
707
+ acsUrl: session.requested.acsUrl,
708
+ entityId: session.requested.entityId,
709
+ requestedOIDCFlow: !!session.requested.oidc,
710
+ profile,
711
+ },
712
+ });
713
+ if (isSAMLFederated) {
714
+ throw err;
649
715
  }
716
+ return {
717
+ redirect_url: (0, utils_1.OAuthErrorResponse)({
718
+ error: error || 'server_error',
719
+ error_description: traceId ? `${traceId}: ${error_description}` : error_description,
720
+ redirect_uri: redirect_uri,
721
+ state: session.state,
722
+ }),
723
+ };
650
724
  }
651
- const code = yield this._buildAuthorizationCode(oidcConnection, profile, session, false);
652
- const params = {
653
- code,
654
- };
655
- if (session && session.state) {
656
- params['state'] = session.state;
657
- }
658
- const redirectUrl = redirect.success(redirect_uri, params);
659
- yield this.sessionStore.delete(RelayState);
660
- return { redirect_url: redirectUrl };
661
725
  });
662
726
  }
663
727
  // Build the authorization code for the session
@@ -1 +1 @@
1
- {"version":3,"file":"oauth.js","sourceRoot":"","sources":["../../src/controller/oauth.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"oauth.js","sourceRoot":"","sources":["../../src/controller/oauth.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import type { SAMLProfile } from '@boxyhq/saml20/dist/typings';
2
2
  import type { JacksonOption, Storable, SAMLSSORecord, OIDCSSORecord } from '../typings';
3
- export declare class SAMLHandler {
3
+ export declare class SSOHandler {
4
4
  private connection;
5
5
  private session;
6
6
  private opts;
@@ -24,17 +24,24 @@ export declare class SAMLHandler {
24
24
  } | {
25
25
  postForm: string;
26
26
  }>;
27
- createSAMLRequest(params: {
27
+ createSAMLRequest({ connection, requestParams, }: {
28
28
  connection: SAMLSSORecord;
29
29
  requestParams: Record<string, any>;
30
30
  }): Promise<{
31
31
  redirect_url: any;
32
32
  authorize_form: any;
33
33
  }>;
34
- createSAMLResponse: (params: {
34
+ createOIDCRequest({ connection, requestParams, }: {
35
+ connection: OIDCSSORecord;
36
+ requestParams: Record<string, any>;
37
+ }): Promise<{
38
+ redirect_url: string;
39
+ }>;
40
+ createSAMLResponse: ({ profile, session }: {
35
41
  profile: SAMLProfile;
36
42
  session: any;
37
43
  }) => Promise<{
38
44
  responseForm: string;
39
45
  }>;
46
+ private createSession;
40
47
  }