@boxyhq/saml-jackson 1.17.1 → 1.18.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/dist/controller/api.d.ts +3 -1
- package/dist/controller/api.js +6 -5
- package/dist/controller/api.js.map +1 -1
- package/dist/controller/connection/oidc.d.ts +3 -2
- package/dist/controller/connection/oidc.js +26 -2
- package/dist/controller/connection/oidc.js.map +1 -1
- package/dist/controller/connection/saml.d.ts +3 -2
- package/dist/controller/connection/saml.js +28 -4
- package/dist/controller/connection/saml.js.map +1 -1
- package/dist/ee/ory/ory.d.ts +18 -0
- package/dist/ee/ory/ory.js +197 -0
- package/dist/ee/ory/ory.js.map +1 -0
- package/dist/index.js +9 -2
- package/dist/index.js.map +1 -1
- package/dist/typings.d.ts +18 -1
- package/package.json +9 -9
package/dist/controller/api.d.ts
CHANGED
@@ -3,10 +3,12 @@ export declare class ConnectionAPIController implements IConnectionAPIController
|
|
3
3
|
private connectionStore;
|
4
4
|
private opts;
|
5
5
|
private eventController;
|
6
|
-
|
6
|
+
private oryController;
|
7
|
+
constructor({ connectionStore, opts, eventController, oryController }: {
|
7
8
|
connectionStore: any;
|
8
9
|
opts: any;
|
9
10
|
eventController: any;
|
11
|
+
oryController: any;
|
10
12
|
});
|
11
13
|
/**
|
12
14
|
* @swagger
|
package/dist/controller/api.js
CHANGED
@@ -43,10 +43,11 @@ const utils_1 = require("./utils");
|
|
43
43
|
const oidc_1 = __importDefault(require("./connection/oidc"));
|
44
44
|
const saml_1 = __importDefault(require("./connection/saml"));
|
45
45
|
class ConnectionAPIController {
|
46
|
-
constructor({ connectionStore, opts, eventController }) {
|
46
|
+
constructor({ connectionStore, opts, eventController, oryController }) {
|
47
47
|
this.connectionStore = connectionStore;
|
48
48
|
this.opts = opts;
|
49
49
|
this.eventController = eventController;
|
50
|
+
this.oryController = oryController;
|
50
51
|
}
|
51
52
|
/**
|
52
53
|
* @swagger
|
@@ -185,7 +186,7 @@ class ConnectionAPIController {
|
|
185
186
|
createSAMLConnection(body) {
|
186
187
|
return __awaiter(this, void 0, void 0, function* () {
|
187
188
|
metrics.increment('createConnection');
|
188
|
-
const connection = yield saml_1.default.create(body, this.connectionStore);
|
189
|
+
const connection = yield saml_1.default.create(body, this.connectionStore, this.oryController);
|
189
190
|
yield this.eventController.notify('sso.created', connection);
|
190
191
|
return connection;
|
191
192
|
});
|
@@ -202,7 +203,7 @@ class ConnectionAPIController {
|
|
202
203
|
if (!this.opts.oidcPath) {
|
203
204
|
throw new error_1.JacksonError('Please set OpenID response handler path (oidcPath) on Jackson', 500);
|
204
205
|
}
|
205
|
-
const connection = yield oidc_1.default.create(body, this.connectionStore);
|
206
|
+
const connection = yield oidc_1.default.create(body, this.connectionStore, this.oryController);
|
206
207
|
yield this.eventController.notify('sso.created', connection);
|
207
208
|
return connection;
|
208
209
|
});
|
@@ -335,7 +336,7 @@ class ConnectionAPIController {
|
|
335
336
|
*/
|
336
337
|
updateSAMLConnection(body) {
|
337
338
|
return __awaiter(this, void 0, void 0, function* () {
|
338
|
-
const connection = yield saml_1.default.update(body, this.connectionStore, this.getConnections.bind(this));
|
339
|
+
const connection = yield saml_1.default.update(body, this.connectionStore, this.getConnections.bind(this), this.oryController);
|
339
340
|
if ('deactivated' in body) {
|
340
341
|
if ((0, utils_1.isConnectionActive)(connection)) {
|
341
342
|
yield this.eventController.notify('sso.activated', connection);
|
@@ -357,7 +358,7 @@ class ConnectionAPIController {
|
|
357
358
|
if (!this.opts.oidcPath) {
|
358
359
|
throw new error_1.JacksonError('Please set OpenID response handler path (oidcPath) on Jackson', 500);
|
359
360
|
}
|
360
|
-
const connection = yield oidc_1.default.update(body, this.connectionStore, this.getConnections.bind(this));
|
361
|
+
const connection = yield oidc_1.default.update(body, this.connectionStore, this.getConnections.bind(this), this.oryController);
|
361
362
|
if ('deactivated' in body) {
|
362
363
|
if ((0, utils_1.isConnectionActive)(connection)) {
|
363
364
|
yield this.eventController.notify('sso.activated', connection);
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/controller/api.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,qDAAuC;AACvC,kEAAoD;AAqBpD,mCAAuC;AACvC,mCAA2G;AAC3G,6DAA+C;AAC/C,6DAA+C;
|
1
|
+
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/controller/api.ts"],"names":[],"mappings":"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"}
|
@@ -1,6 +1,7 @@
|
|
1
1
|
import { IConnectionAPIController, OIDCSSOConnectionWithDiscoveryUrl, OIDCSSOConnectionWithMetadata, OIDCSSORecord, Storable, UpdateOIDCConnectionParams } from '../../typings';
|
2
|
+
import { OryController } from '../../ee/ory/ory';
|
2
3
|
declare const oidc: {
|
3
|
-
create: (body: OIDCSSOConnectionWithDiscoveryUrl | OIDCSSOConnectionWithMetadata, connectionStore: Storable) => Promise<OIDCSSORecord>;
|
4
|
-
update: (body: UpdateOIDCConnectionParams, connectionStore: Storable, connectionsGetter: IConnectionAPIController['getConnections']) => Promise<OIDCSSORecord>;
|
4
|
+
create: (body: OIDCSSOConnectionWithDiscoveryUrl | OIDCSSOConnectionWithMetadata, connectionStore: Storable, oryController: OryController) => Promise<OIDCSSORecord>;
|
5
|
+
update: (body: UpdateOIDCConnectionParams, connectionStore: Storable, connectionsGetter: IConnectionAPIController['getConnections'], oryController: OryController) => Promise<OIDCSSORecord>;
|
5
6
|
};
|
6
7
|
export default oidc;
|
@@ -51,7 +51,8 @@ const dbutils = __importStar(require("../../db/utils"));
|
|
51
51
|
const utils_1 = require("../utils");
|
52
52
|
const error_1 = require("../error");
|
53
53
|
const oidc = {
|
54
|
-
create: (body, connectionStore) => __awaiter(void 0, void 0, void 0, function* () {
|
54
|
+
create: (body, connectionStore, oryController) => __awaiter(void 0, void 0, void 0, function* () {
|
55
|
+
var _a, _b, _c;
|
55
56
|
(0, utils_1.validateSSOConnection)(body, 'oidc');
|
56
57
|
const { defaultRedirectUrl, redirectUrl, tenant, product, name, description, oidcDiscoveryUrl = '', oidcMetadata = { issuer: '' }, oidcClientId = '', oidcClientSecret = '', } = body;
|
57
58
|
let connectionClientSecret;
|
@@ -85,6 +86,8 @@ const oidc = {
|
|
85
86
|
// Use the clientId from the OpenID Provider to generate the clientID hash for the connection
|
86
87
|
record.clientID = dbutils.keyDigest(dbutils.keyFromParts(tenant, product, oidcClientId));
|
87
88
|
const exists = yield connectionStore.get(record.clientID);
|
89
|
+
const oryProjectId = (_a = exists === null || exists === void 0 ? void 0 : exists.ory) === null || _a === void 0 ? void 0 : _a.projectId;
|
90
|
+
const oryOrganizationId = (_b = exists === null || exists === void 0 ? void 0 : exists.ory) === null || _b === void 0 ? void 0 : _b.organizationId;
|
88
91
|
if (exists) {
|
89
92
|
connectionClientSecret = exists.clientSecret;
|
90
93
|
}
|
@@ -92,6 +95,16 @@ const oidc = {
|
|
92
95
|
connectionClientSecret = crypto_1.default.randomBytes(24).toString('hex');
|
93
96
|
}
|
94
97
|
record.clientSecret = connectionClientSecret;
|
98
|
+
const oryRes = yield oryController.createConnection({
|
99
|
+
sdkToken: undefined,
|
100
|
+
projectId: oryProjectId,
|
101
|
+
domains: (_c = body.ory) === null || _c === void 0 ? void 0 : _c.domains,
|
102
|
+
organizationId: oryOrganizationId,
|
103
|
+
error: undefined,
|
104
|
+
}, tenant, product);
|
105
|
+
if (oryRes) {
|
106
|
+
record.ory = oryRes;
|
107
|
+
}
|
95
108
|
yield connectionStore.put(record.clientID, record, {
|
96
109
|
// secondary index on tenant + product
|
97
110
|
name: utils_1.IndexNames.TenantProduct,
|
@@ -103,7 +116,8 @@ const oidc = {
|
|
103
116
|
});
|
104
117
|
return record;
|
105
118
|
}),
|
106
|
-
update: (body, connectionStore, connectionsGetter) => __awaiter(void 0, void 0, void 0, function* () {
|
119
|
+
update: (body, connectionStore, connectionsGetter, oryController) => __awaiter(void 0, void 0, void 0, function* () {
|
120
|
+
var _d, _e, _f;
|
107
121
|
const { defaultRedirectUrl, redirectUrl, name, description, oidcDiscoveryUrl, oidcMetadata, oidcClientId, oidcClientSecret } = body, clientInfo = __rest(body, ["defaultRedirectUrl", "redirectUrl", "name", "description", "oidcDiscoveryUrl", "oidcMetadata", "oidcClientId", "oidcClientSecret"]);
|
108
122
|
if (!(clientInfo === null || clientInfo === void 0 ? void 0 : clientInfo.clientID)) {
|
109
123
|
throw new error_1.JacksonError('Please provide clientID', 400);
|
@@ -158,6 +172,16 @@ const oidc = {
|
|
158
172
|
if ('deactivated' in body) {
|
159
173
|
record['deactivated'] = body.deactivated;
|
160
174
|
}
|
175
|
+
const oryRes = yield oryController.updateConnection({
|
176
|
+
sdkToken: undefined,
|
177
|
+
projectId: (_d = _savedConnection.ory) === null || _d === void 0 ? void 0 : _d.projectId,
|
178
|
+
domains: (_e = _savedConnection.ory) === null || _e === void 0 ? void 0 : _e.domains,
|
179
|
+
organizationId: (_f = _savedConnection.ory) === null || _f === void 0 ? void 0 : _f.organizationId,
|
180
|
+
error: undefined,
|
181
|
+
}, _savedConnection.tenant, _savedConnection.product);
|
182
|
+
if (oryRes) {
|
183
|
+
record.ory = oryRes;
|
184
|
+
}
|
161
185
|
yield connectionStore.put(clientInfo === null || clientInfo === void 0 ? void 0 : clientInfo.clientID, record, {
|
162
186
|
// secondary index on tenant + product
|
163
187
|
name: utils_1.IndexNames.TenantProduct,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"oidc.js","sourceRoot":"","sources":["../../../src/controller/connection/oidc.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,oDAA4B;AAS5B,wDAA0C;AAC1C,oCAOkB;AAClB,oCAAwC;
|
1
|
+
{"version":3,"file":"oidc.js","sourceRoot":"","sources":["../../../src/controller/connection/oidc.ts"],"names":[],"mappings":"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"}
|
@@ -1,6 +1,7 @@
|
|
1
1
|
import { IConnectionAPIController, SAMLSSOConnectionWithEncodedMetadata, SAMLSSOConnectionWithRawMetadata, SAMLSSORecord, Storable, UpdateSAMLConnectionParams } from '../../typings';
|
2
|
+
import { OryController } from '../../ee/ory/ory';
|
2
3
|
declare const saml: {
|
3
|
-
create: (body: SAMLSSOConnectionWithRawMetadata | SAMLSSOConnectionWithEncodedMetadata, connectionStore: Storable) => Promise<SAMLSSORecord>;
|
4
|
-
update: (body: UpdateSAMLConnectionParams, connectionStore: Storable, connectionsGetter: IConnectionAPIController['getConnections']) => Promise<SAMLSSORecord>;
|
4
|
+
create: (body: SAMLSSOConnectionWithRawMetadata | SAMLSSOConnectionWithEncodedMetadata, connectionStore: Storable, oryController: OryController) => Promise<SAMLSSORecord>;
|
5
|
+
update: (body: UpdateSAMLConnectionParams, connectionStore: Storable, connectionsGetter: IConnectionAPIController['getConnections'], oryController: OryController) => Promise<SAMLSSORecord>;
|
5
6
|
};
|
6
7
|
export default saml;
|
@@ -47,11 +47,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
47
47
|
};
|
48
48
|
Object.defineProperty(exports, "__esModule", { value: true });
|
49
49
|
const crypto_1 = __importDefault(require("crypto"));
|
50
|
+
const saml20_1 = __importDefault(require("@boxyhq/saml20"));
|
51
|
+
const axios_1 = __importDefault(require("axios"));
|
50
52
|
const dbutils = __importStar(require("../../db/utils"));
|
51
53
|
const utils_1 = require("../utils");
|
52
|
-
const saml20_1 = __importDefault(require("@boxyhq/saml20"));
|
53
54
|
const error_1 = require("../error");
|
54
|
-
const axios_1 = __importDefault(require("axios"));
|
55
55
|
function fetchMetadata(resource) {
|
56
56
|
var _a;
|
57
57
|
return __awaiter(this, void 0, void 0, function* () {
|
@@ -85,7 +85,8 @@ function validateMetadataURL(metadataUrl) {
|
|
85
85
|
}
|
86
86
|
}
|
87
87
|
const saml = {
|
88
|
-
create: (body, connectionStore) => __awaiter(void 0, void 0, void 0, function* () {
|
88
|
+
create: (body, connectionStore, oryController) => __awaiter(void 0, void 0, void 0, function* () {
|
89
|
+
var _a, _b, _c;
|
89
90
|
const { encodedRawMetadata, rawMetadata, defaultRedirectUrl, redirectUrl, tenant, product, name, description, metadataUrl, identifierFormat, } = body;
|
90
91
|
const forceAuthn = body.forceAuthn == 'true' || body.forceAuthn == true;
|
91
92
|
let connectionClientSecret;
|
@@ -141,6 +142,8 @@ const saml = {
|
|
141
142
|
}
|
142
143
|
}
|
143
144
|
const exists = yield connectionStore.get(record.clientID);
|
145
|
+
const oryProjectId = (_a = exists === null || exists === void 0 ? void 0 : exists.ory) === null || _a === void 0 ? void 0 : _a.projectId;
|
146
|
+
const oryOrganizationId = (_b = exists === null || exists === void 0 ? void 0 : exists.ory) === null || _b === void 0 ? void 0 : _b.organizationId;
|
144
147
|
if (exists) {
|
145
148
|
connectionClientSecret = exists.clientSecret;
|
146
149
|
}
|
@@ -148,6 +151,16 @@ const saml = {
|
|
148
151
|
connectionClientSecret = crypto_1.default.randomBytes(24).toString('hex');
|
149
152
|
}
|
150
153
|
record.clientSecret = connectionClientSecret;
|
154
|
+
const oryRes = yield oryController.createConnection({
|
155
|
+
sdkToken: undefined,
|
156
|
+
projectId: oryProjectId,
|
157
|
+
domains: (_c = body.ory) === null || _c === void 0 ? void 0 : _c.domains,
|
158
|
+
organizationId: oryOrganizationId,
|
159
|
+
error: undefined,
|
160
|
+
}, tenant, product);
|
161
|
+
if (oryRes) {
|
162
|
+
record.ory = oryRes;
|
163
|
+
}
|
151
164
|
yield connectionStore.put(record.clientID, record, {
|
152
165
|
name: utils_1.IndexNames.EntityID, // secondary index on entityID
|
153
166
|
value: idpMetadata.entityID,
|
@@ -162,7 +175,8 @@ const saml = {
|
|
162
175
|
});
|
163
176
|
return record;
|
164
177
|
}),
|
165
|
-
update: (body, connectionStore, connectionsGetter) => __awaiter(void 0, void 0, void 0, function* () {
|
178
|
+
update: (body, connectionStore, connectionsGetter, oryController) => __awaiter(void 0, void 0, void 0, function* () {
|
179
|
+
var _d, _e, _f;
|
166
180
|
const { encodedRawMetadata, // could be empty
|
167
181
|
rawMetadata, // could be empty
|
168
182
|
defaultRedirectUrl, redirectUrl, name, description, forceAuthn = false, metadataUrl } = body, clientInfo = __rest(body, ["encodedRawMetadata", "rawMetadata", "defaultRedirectUrl", "redirectUrl", "name", "description", "forceAuthn", "metadataUrl"]);
|
@@ -221,6 +235,16 @@ const saml = {
|
|
221
235
|
if ('identifierFormat' in body) {
|
222
236
|
record['identifierFormat'] = body.identifierFormat;
|
223
237
|
}
|
238
|
+
const oryRes = yield oryController.updateConnection({
|
239
|
+
sdkToken: undefined,
|
240
|
+
projectId: (_d = _savedConnection.ory) === null || _d === void 0 ? void 0 : _d.projectId,
|
241
|
+
domains: (_e = _savedConnection.ory) === null || _e === void 0 ? void 0 : _e.domains,
|
242
|
+
organizationId: (_f = _savedConnection.ory) === null || _f === void 0 ? void 0 : _f.organizationId,
|
243
|
+
error: undefined,
|
244
|
+
}, _savedConnection.tenant, _savedConnection.product);
|
245
|
+
if (oryRes) {
|
246
|
+
record.ory = oryRes;
|
247
|
+
}
|
224
248
|
yield connectionStore.put(clientInfo === null || clientInfo === void 0 ? void 0 : clientInfo.clientID, record, {
|
225
249
|
// secondary index on entityID
|
226
250
|
name: utils_1.IndexNames.EntityID,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"saml.js","sourceRoot":"","sources":["../../../src/controller/connection/saml.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,oDAA4B;
|
1
|
+
{"version":3,"file":"saml.js","sourceRoot":"","sources":["../../../src/controller/connection/saml.ts"],"names":[],"mappings":"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"}
|
@@ -0,0 +1,18 @@
|
|
1
|
+
import { JacksonOption, OryConfig, OryRes } from '../../typings';
|
2
|
+
import { ProductController } from '../product';
|
3
|
+
export declare class OryController {
|
4
|
+
private opts;
|
5
|
+
private productController;
|
6
|
+
constructor({ opts, productController }: {
|
7
|
+
opts: JacksonOption;
|
8
|
+
productController: ProductController;
|
9
|
+
});
|
10
|
+
private getOrgName;
|
11
|
+
private getIssuerUrl;
|
12
|
+
private addOrUpdateConnection;
|
13
|
+
private createOrganization;
|
14
|
+
private sanitizeConfig;
|
15
|
+
createConnection(config: OryConfig, tenant: string, product: string): Promise<OryRes | null>;
|
16
|
+
updateConnection(config: OryConfig, tenant: string, product: string): Promise<OryRes | null>;
|
17
|
+
private isEnabled;
|
18
|
+
}
|
@@ -0,0 +1,197 @@
|
|
1
|
+
"use strict";
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
9
|
+
});
|
10
|
+
};
|
11
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
12
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
13
|
+
};
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
15
|
+
exports.OryController = void 0;
|
16
|
+
const axios_1 = __importDefault(require("axios"));
|
17
|
+
const checkLicense_1 = require("../common/checkLicense");
|
18
|
+
const basePath = 'https://api.console.ory.sh';
|
19
|
+
const providerId = 'sso_boxyhq';
|
20
|
+
const dataMapping = 'base64://bG9jYWwgY2xhaW1zID0gewogIGVtYWlsX3ZlcmlmaWVkOiB0cnVlLAp9ICsgc3RkLmV4dFZhcignY2xhaW1zJyk7Cgp7CiAgaWRlbnRpdHk6IHsKICAgIHRyYWl0czogewogICAgICBbaWYgJ2VtYWlsJyBpbiBjbGFpbXMgJiYgY2xhaW1zLmVtYWlsX3ZlcmlmaWVkIHRoZW4gJ2VtYWlsJyBlbHNlIG51bGxdOiBjbGFpbXMuZW1haWwsCiAgICB9LAogIH0sCn0=';
|
21
|
+
const issuerUrl = 'https://sso.eu.boxyhq.com';
|
22
|
+
class OryController {
|
23
|
+
constructor({ opts, productController }) {
|
24
|
+
this.opts = opts;
|
25
|
+
this.productController = productController;
|
26
|
+
}
|
27
|
+
getOrgName(tenant, product) {
|
28
|
+
return this.opts.boxyhqHosted ? tenant : `${tenant}:${product}`;
|
29
|
+
}
|
30
|
+
getIssuerUrl() {
|
31
|
+
if (this.opts.boxyhqHosted) {
|
32
|
+
return issuerUrl;
|
33
|
+
}
|
34
|
+
else {
|
35
|
+
return this.opts.externalUrl;
|
36
|
+
}
|
37
|
+
}
|
38
|
+
addOrUpdateConnection(config, tenant, product) {
|
39
|
+
return __awaiter(this, void 0, void 0, function* () {
|
40
|
+
const project = yield axios_1.default.get(`${basePath}/projects/${config.projectId}`, {
|
41
|
+
headers: {
|
42
|
+
Authorization: `Bearer ${config.sdkToken}`,
|
43
|
+
},
|
44
|
+
});
|
45
|
+
let index = '-';
|
46
|
+
try {
|
47
|
+
for (const idx in project.data.services.identity.config.selfservice.methods.oidc.config.providers) {
|
48
|
+
const provider = project.data.services.identity.config.selfservice.methods.oidc.config.providers[idx];
|
49
|
+
if (provider.id === providerId && provider.organization_id === config.organizationId) {
|
50
|
+
index = idx;
|
51
|
+
break;
|
52
|
+
}
|
53
|
+
}
|
54
|
+
}
|
55
|
+
catch (err) {
|
56
|
+
// empty
|
57
|
+
}
|
58
|
+
const op = index === '-' ? 'add' : 'replace';
|
59
|
+
yield axios_1.default.patch(`${basePath}/normalized/projects/${config.projectId}/revision/${project.data.revision_id}`, [
|
60
|
+
{ op: 'replace', path: '/kratos_selfservice_methods_oidc_enabled', value: true },
|
61
|
+
{
|
62
|
+
op,
|
63
|
+
path: `/kratos_selfservice_methods_oidc_config_providers/${index}`,
|
64
|
+
value: {
|
65
|
+
provider_id: providerId,
|
66
|
+
provider: 'generic',
|
67
|
+
label: 'SSO',
|
68
|
+
client_id: `tenant=${tenant}&product=${product}`,
|
69
|
+
client_secret: this.opts.clientSecretVerifier,
|
70
|
+
organization_id: config.organizationId,
|
71
|
+
scope: [],
|
72
|
+
mapper_url: dataMapping,
|
73
|
+
additional_id_token_audiences: [],
|
74
|
+
issuer_url: this.getIssuerUrl(),
|
75
|
+
},
|
76
|
+
},
|
77
|
+
], {
|
78
|
+
headers: {
|
79
|
+
Authorization: `Bearer ${config.sdkToken}`,
|
80
|
+
},
|
81
|
+
});
|
82
|
+
});
|
83
|
+
}
|
84
|
+
createOrganization(config, label) {
|
85
|
+
var _a;
|
86
|
+
return __awaiter(this, void 0, void 0, function* () {
|
87
|
+
if (!config.sdkToken || !config.projectId) {
|
88
|
+
throw new Error('Ory SDK Token or Project ID not set');
|
89
|
+
}
|
90
|
+
if (config && config.organizationId) {
|
91
|
+
try {
|
92
|
+
const res = yield axios_1.default.get(`${basePath}/projects/${config.projectId}/organizations/${config.organizationId}`, {
|
93
|
+
headers: {
|
94
|
+
Authorization: `Bearer ${config.sdkToken}`,
|
95
|
+
},
|
96
|
+
});
|
97
|
+
return res.data.organization.id;
|
98
|
+
}
|
99
|
+
catch (err) {
|
100
|
+
// if org doesn't exist fall through to section that creates it below
|
101
|
+
if (((_a = err.response) === null || _a === void 0 ? void 0 : _a.status) !== 404) {
|
102
|
+
throw err;
|
103
|
+
}
|
104
|
+
}
|
105
|
+
}
|
106
|
+
const res = yield axios_1.default.post(`${basePath}/projects/${config.projectId}/organizations`, {
|
107
|
+
label,
|
108
|
+
domains: config.domains,
|
109
|
+
}, {
|
110
|
+
headers: {
|
111
|
+
Authorization: `Bearer ${config.sdkToken}`,
|
112
|
+
},
|
113
|
+
});
|
114
|
+
return res.data.id;
|
115
|
+
});
|
116
|
+
}
|
117
|
+
sanitizeConfig(config, tenant) {
|
118
|
+
var _a, _b;
|
119
|
+
return __awaiter(this, void 0, void 0, function* () {
|
120
|
+
if (!config.sdkToken) {
|
121
|
+
config.sdkToken = (_a = this.opts.ory) === null || _a === void 0 ? void 0 : _a.sdkToken;
|
122
|
+
}
|
123
|
+
if (!config.projectId) {
|
124
|
+
config.projectId = (_b = this.opts.ory) === null || _b === void 0 ? void 0 : _b.projectId;
|
125
|
+
}
|
126
|
+
config.domains = config.domains || [];
|
127
|
+
if (!config.domains.includes(tenant)) {
|
128
|
+
config.domains.push(tenant);
|
129
|
+
}
|
130
|
+
return config;
|
131
|
+
});
|
132
|
+
}
|
133
|
+
createConnection(config, tenant, product) {
|
134
|
+
return __awaiter(this, void 0, void 0, function* () {
|
135
|
+
if (!(yield this.isEnabled(config, tenant, product))) {
|
136
|
+
return null;
|
137
|
+
}
|
138
|
+
const organizationId = yield this.createOrganization(config, this.getOrgName(tenant, product));
|
139
|
+
config.organizationId = organizationId;
|
140
|
+
let error;
|
141
|
+
try {
|
142
|
+
yield this.addOrUpdateConnection(config, tenant, product);
|
143
|
+
}
|
144
|
+
catch (err) {
|
145
|
+
error = err;
|
146
|
+
}
|
147
|
+
return { projectId: config.projectId, domains: config.domains, organizationId, error };
|
148
|
+
});
|
149
|
+
}
|
150
|
+
updateConnection(config, tenant, product) {
|
151
|
+
return __awaiter(this, void 0, void 0, function* () {
|
152
|
+
if (!(yield this.isEnabled(config, tenant, product))) {
|
153
|
+
return null;
|
154
|
+
}
|
155
|
+
const organizationId = yield this.createOrganization(config, this.getOrgName(tenant, product));
|
156
|
+
let error;
|
157
|
+
try {
|
158
|
+
yield this.addOrUpdateConnection(config, tenant, product);
|
159
|
+
}
|
160
|
+
catch (err) {
|
161
|
+
error = err;
|
162
|
+
}
|
163
|
+
return { projectId: config.projectId, domains: config.domains, organizationId, error };
|
164
|
+
});
|
165
|
+
}
|
166
|
+
isEnabled(config, tenant, product) {
|
167
|
+
var _a, _b;
|
168
|
+
return __awaiter(this, void 0, void 0, function* () {
|
169
|
+
if (this.opts.boxyhqHosted) {
|
170
|
+
const productConfig = yield this.productController.get(product);
|
171
|
+
if (!productConfig || !productConfig.ory) {
|
172
|
+
return false;
|
173
|
+
}
|
174
|
+
config.sdkToken = productConfig.ory.sdkToken;
|
175
|
+
config.projectId = productConfig.ory.projectId;
|
176
|
+
this.sanitizeConfig(config, tenant);
|
177
|
+
return true;
|
178
|
+
}
|
179
|
+
else {
|
180
|
+
if (!((_a = this.opts.ory) === null || _a === void 0 ? void 0 : _a.sdkToken) || !((_b = this.opts.ory) === null || _b === void 0 ? void 0 : _b.projectId)) {
|
181
|
+
return false;
|
182
|
+
}
|
183
|
+
try {
|
184
|
+
yield (0, checkLicense_1.throwIfInvalidLicense)(this.opts.boxyhqLicenseKey);
|
185
|
+
}
|
186
|
+
catch (err) {
|
187
|
+
console.error('Ory is not enabled because of invalid license');
|
188
|
+
return false;
|
189
|
+
}
|
190
|
+
this.sanitizeConfig(config, tenant);
|
191
|
+
return true;
|
192
|
+
}
|
193
|
+
});
|
194
|
+
}
|
195
|
+
}
|
196
|
+
exports.OryController = OryController;
|
197
|
+
//# sourceMappingURL=ory.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"ory.js","sourceRoot":"","sources":["../../../src/ee/ory/ory.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AACA,kDAA0C;AAC1C,yDAA+D;AAG/D,MAAM,QAAQ,GAAG,4BAA4B,CAAC;AAC9C,MAAM,UAAU,GAAG,YAAY,CAAC;AAChC,MAAM,WAAW,GACf,2RAA2R,CAAC;AAC9R,MAAM,SAAS,GAAG,2BAA2B,CAAC;AAE9C,MAAa,aAAa;IAIxB,YAAY,EAAE,IAAI,EAAE,iBAAiB,EAAiE;QACpG,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;IAC7C,CAAC;IAEO,UAAU,CAAC,MAAc,EAAE,OAAe;QAChD,OAAO,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,IAAI,OAAO,EAAE,CAAC;IAClE,CAAC;IAEO,YAAY;QAClB,IAAI,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YAC3B,OAAO,SAAS,CAAC;QACnB,CAAC;aAAM,CAAC;YACN,OAAO,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC;QAC/B,CAAC;IACH,CAAC;IAEa,qBAAqB,CAAC,MAAiB,EAAE,MAAc,EAAE,OAAe;;YACpF,MAAM,OAAO,GAAG,MAAM,eAAK,CAAC,GAAG,CAAC,GAAG,QAAQ,aAAa,MAAM,CAAC,SAAS,EAAE,EAAE;gBAC1E,OAAO,EAAE;oBACP,aAAa,EAAE,UAAU,MAAM,CAAC,QAAQ,EAAE;iBAC3C;aACF,CAAC,CAAC;YAEH,IAAI,KAAK,GAAG,GAAG,CAAC;YAChB,IAAI,CAAC;gBACH,KAAK,MAAM,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;oBAClG,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;oBACtG,IAAI,QAAQ,CAAC,EAAE,KAAK,UAAU,IAAI,QAAQ,CAAC,eAAe,KAAK,MAAM,CAAC,cAAc,EAAE,CAAC;wBACrF,KAAK,GAAG,GAAG,CAAC;wBACZ,MAAM;oBACR,CAAC;gBACH,CAAC;YACH,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,QAAQ;YACV,CAAC;YAED,MAAM,EAAE,GAAG,KAAK,KAAK,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;YAE7C,MAAM,eAAK,CAAC,KAAK,CACf,GAAG,QAAQ,wBAAwB,MAAM,CAAC,SAAS,aAAa,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,EAC1F;gBACE,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,0CAA0C,EAAE,KAAK,EAAE,IAAI,EAAE;gBAChF;oBACE,EAAE;oBACF,IAAI,EAAE,qDAAqD,KAAK,EAAE;oBAClE,KAAK,EAAE;wBACL,WAAW,EAAE,UAAU;wBACvB,QAAQ,EAAE,SAAS;wBACnB,KAAK,EAAE,KAAK;wBACZ,SAAS,EAAE,UAAU,MAAM,YAAY,OAAO,EAAE;wBAChD,aAAa,EAAE,IAAI,CAAC,IAAI,CAAC,oBAAoB;wBAC7C,eAAe,EAAE,MAAM,CAAC,cAAc;wBACtC,KAAK,EAAE,EAAE;wBACT,UAAU,EAAE,WAAW;wBACvB,6BAA6B,EAAE,EAAE;wBACjC,UAAU,EAAE,IAAI,CAAC,YAAY,EAAE;qBAChC;iBACF;aACF,EACD;gBACE,OAAO,EAAE;oBACP,aAAa,EAAE,UAAU,MAAM,CAAC,QAAQ,EAAE;iBAC3C;aACF,CACF,CAAC;QACJ,CAAC;KAAA;IAEa,kBAAkB,CAAC,MAAiB,EAAE,KAAa;;;YAC/D,IAAI,CAAC,MAAM,CAAC,QAAQ,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;gBAC1C,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;YACzD,CAAC;YAED,IAAI,MAAM,IAAI,MAAM,CAAC,cAAc,EAAE,CAAC;gBACpC,IAAI,CAAC;oBACH,MAAM,GAAG,GAAG,MAAM,eAAK,CAAC,GAAG,CACzB,GAAG,QAAQ,aAAa,MAAM,CAAC,SAAS,kBAAkB,MAAM,CAAC,cAAc,EAAE,EACjF;wBACE,OAAO,EAAE;4BACP,aAAa,EAAE,UAAU,MAAM,CAAC,QAAQ,EAAE;yBAC3C;qBACF,CACF,CAAC;oBACF,OAAO,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC;gBAClC,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,qEAAqE;oBACrE,IAAI,CAAA,MAAC,GAAkB,CAAC,QAAQ,0CAAE,MAAM,MAAK,GAAG,EAAE,CAAC;wBACjD,MAAM,GAAG,CAAC;oBACZ,CAAC;gBACH,CAAC;YACH,CAAC;YAED,MAAM,GAAG,GAAG,MAAM,eAAK,CAAC,IAAI,CAC1B,GAAG,QAAQ,aAAa,MAAM,CAAC,SAAS,gBAAgB,EACxD;gBACE,KAAK;gBACL,OAAO,EAAE,MAAM,CAAC,OAAO;aACxB,EACD;gBACE,OAAO,EAAE;oBACP,aAAa,EAAE,UAAU,MAAM,CAAC,QAAQ,EAAE;iBAC3C;aACF,CACF,CAAC;YACF,OAAO,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;;KACpB;IAEa,cAAc,CAAC,MAAiB,EAAE,MAAc;;;YAC5D,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;gBACrB,MAAM,CAAC,QAAQ,GAAG,MAAA,IAAI,CAAC,IAAI,CAAC,GAAG,0CAAE,QAAQ,CAAC;YAC5C,CAAC;YACD,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;gBACtB,MAAM,CAAC,SAAS,GAAG,MAAA,IAAI,CAAC,IAAI,CAAC,GAAG,0CAAE,SAAS,CAAC;YAC9C,CAAC;YACD,MAAM,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC;YACtC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;gBACrC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAC9B,CAAC;YACD,OAAO,MAAM,CAAC;;KACf;IAEY,gBAAgB,CAAC,MAAiB,EAAE,MAAc,EAAE,OAAe;;YAC9E,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,EAAE,CAAC;gBACrD,OAAO,IAAI,CAAC;YACd,CAAC;YAED,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;YAC/F,MAAM,CAAC,cAAc,GAAG,cAAc,CAAC;YAEvC,IAAI,KAAK,CAAC;YACV,IAAI,CAAC;gBACH,MAAM,IAAI,CAAC,qBAAqB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;YAC5D,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,KAAK,GAAG,GAAG,CAAC;YACd,CAAC;YAED,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,cAAc,EAAE,KAAK,EAAE,CAAC;QACzF,CAAC;KAAA;IAEY,gBAAgB,CAAC,MAAiB,EAAE,MAAc,EAAE,OAAe;;YAC9E,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,EAAE,CAAC;gBACrD,OAAO,IAAI,CAAC;YACd,CAAC;YAED,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;YAE/F,IAAI,KAAK,CAAC;YACV,IAAI,CAAC;gBACH,MAAM,IAAI,CAAC,qBAAqB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;YAC5D,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,KAAK,GAAG,GAAG,CAAC;YACd,CAAC;YAED,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,cAAc,EAAE,KAAK,EAAE,CAAC;QACzF,CAAC;KAAA;IAEa,SAAS,CAAC,MAAiB,EAAE,MAAc,EAAE,OAAe;;;YACxE,IAAI,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;gBAC3B,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;gBAChE,IAAI,CAAC,aAAa,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,CAAC;oBACzC,OAAO,KAAK,CAAC;gBACf,CAAC;gBAED,MAAM,CAAC,QAAQ,GAAG,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC;gBAC7C,MAAM,CAAC,SAAS,GAAG,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC;gBAE/C,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;gBAEpC,OAAO,IAAI,CAAC;YACd,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,CAAA,MAAA,IAAI,CAAC,IAAI,CAAC,GAAG,0CAAE,QAAQ,CAAA,IAAI,CAAC,CAAA,MAAA,IAAI,CAAC,IAAI,CAAC,GAAG,0CAAE,SAAS,CAAA,EAAE,CAAC;oBAC1D,OAAO,KAAK,CAAC;gBACf,CAAC;gBACD,IAAI,CAAC;oBACH,MAAM,IAAA,oCAAqB,EAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;gBAC1D,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,OAAO,CAAC,KAAK,CAAC,+CAA+C,CAAC,CAAC;oBAC/D,OAAO,KAAK,CAAC;gBACf,CAAC;gBACD,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;gBACpC,OAAO,IAAI,CAAC;YACd,CAAC;;KACF;CACF;AA3LD,sCA2LC"}
|
package/dist/index.js
CHANGED
@@ -59,6 +59,7 @@ const branding_1 = require("./ee/branding");
|
|
59
59
|
const sso_tracer_1 = __importDefault(require("./sso-tracer"));
|
60
60
|
const event_1 = __importDefault(require("./event"));
|
61
61
|
const product_1 = require("./ee/product");
|
62
|
+
const ory_1 = require("./ee/ory/ory");
|
62
63
|
const defaultOpts = (opts) => {
|
63
64
|
const newOpts = Object.assign({}, opts);
|
64
65
|
if (!newOpts.externalUrl) {
|
@@ -95,12 +96,18 @@ const controllers = (opts) => __awaiter(void 0, void 0, void 0, function* () {
|
|
95
96
|
const productStore = db.store('product:config');
|
96
97
|
const ssoTracer = new sso_tracer_1.default({ db });
|
97
98
|
const eventController = new event_1.default({ opts });
|
98
|
-
const
|
99
|
+
const productController = new product_1.ProductController({ productStore, opts });
|
100
|
+
const oryController = new ory_1.OryController({ opts, productController });
|
101
|
+
const connectionAPIController = new api_1.ConnectionAPIController({
|
102
|
+
connectionStore,
|
103
|
+
opts,
|
104
|
+
eventController,
|
105
|
+
oryController,
|
106
|
+
});
|
99
107
|
const adminController = new admin_1.AdminController({ connectionStore, ssoTracer });
|
100
108
|
const healthCheckController = new health_check_1.HealthCheckController({ healthCheckStore });
|
101
109
|
yield healthCheckController.init();
|
102
110
|
const setupLinkController = new setup_link_1.SetupLinkController({ setupLinkStore, opts });
|
103
|
-
const productController = new product_1.ProductController({ productStore, opts });
|
104
111
|
// Create default certificate if it doesn't exist.
|
105
112
|
yield x509.init(certificateStore, opts);
|
106
113
|
const oauthController = new oauth_1.OAuthController({
|
package/dist/index.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,iDAAyB;AACzB,+DAAuC;AACvC,sEAA8C;AAC9C,8CAAqD;AACrD,0CAA2D;AAC3D,8CAAqD;AACrD,4DAAkE;AAClE,gDAAuD;AACvD,sEAAiD;AACjD,gEAAsE;AACtE,sDAAqD;AACrD,wDAA8D;AAC9D,sDAA6D;AAC7D,kDAAoC;AACpC,yEAAwF;AACxF,4EAAoD;AACpD,4CAAmD;AACnD,8DAAqC;AACrC,oDAAsC;AACtC,0CAAiD;
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/typings.d.ts
CHANGED
@@ -6,13 +6,23 @@ export * from './directory-sync/types';
|
|
6
6
|
export * from './event/types';
|
7
7
|
import db from './db/db';
|
8
8
|
export type DB = Awaited<ReturnType<typeof db.new>>;
|
9
|
-
interface
|
9
|
+
export interface OryRes {
|
10
|
+
projectId?: string;
|
11
|
+
domains?: string[];
|
12
|
+
organizationId?: string;
|
13
|
+
error: any | undefined;
|
14
|
+
}
|
15
|
+
export interface OryConfig extends OryRes {
|
16
|
+
sdkToken?: string;
|
17
|
+
}
|
18
|
+
export interface SSOConnection {
|
10
19
|
defaultRedirectUrl: string;
|
11
20
|
redirectUrl: string[] | string;
|
12
21
|
tenant: string;
|
13
22
|
product: string;
|
14
23
|
name?: string;
|
15
24
|
description?: string;
|
25
|
+
ory?: OryConfig;
|
16
26
|
}
|
17
27
|
export interface SAMLSSOConnection extends SSOConnection {
|
18
28
|
forceAuthn?: boolean | string;
|
@@ -108,6 +118,7 @@ export type UpdateConnectionParams = TenantProduct & {
|
|
108
118
|
defaultRedirectUrl?: string;
|
109
119
|
redirectUrl?: string[] | string;
|
110
120
|
deactivated?: boolean;
|
121
|
+
ory?: OryConfig;
|
111
122
|
};
|
112
123
|
export type UpdateSAMLConnectionParams = UpdateConnectionParams & {
|
113
124
|
encodedRawMetadata?: string;
|
@@ -374,6 +385,11 @@ export interface JacksonOption {
|
|
374
385
|
};
|
375
386
|
/** The number of days a setup link is valid for. Defaults to 3 days. */
|
376
387
|
setupLinkExpiryDays?: number;
|
388
|
+
boxyhqHosted?: boolean;
|
389
|
+
ory: {
|
390
|
+
projectId: string | undefined;
|
391
|
+
sdkToken: string | undefined;
|
392
|
+
};
|
377
393
|
}
|
378
394
|
export interface SLORequestParams {
|
379
395
|
nameId: string;
|
@@ -477,4 +493,5 @@ export interface ProductConfig {
|
|
477
493
|
primaryColor: string | null;
|
478
494
|
faviconUrl: string | null;
|
479
495
|
companyName: string | null;
|
496
|
+
ory: OryConfig | null;
|
480
497
|
}
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@boxyhq/saml-jackson",
|
3
|
-
"version": "1.
|
3
|
+
"version": "1.18.0",
|
4
4
|
"description": "SAML Jackson library",
|
5
5
|
"keywords": [
|
6
6
|
"SAML 2.0"
|
@@ -39,12 +39,12 @@
|
|
39
39
|
"coverage-map": "map.js"
|
40
40
|
},
|
41
41
|
"dependencies": {
|
42
|
-
"@aws-sdk/client-dynamodb": "3.
|
43
|
-
"@aws-sdk/credential-providers": "3.
|
44
|
-
"@aws-sdk/util-dynamodb": "3.
|
42
|
+
"@aws-sdk/client-dynamodb": "3.502.0",
|
43
|
+
"@aws-sdk/credential-providers": "3.502.0",
|
44
|
+
"@aws-sdk/util-dynamodb": "3.502.0",
|
45
45
|
"@boxyhq/error-code-mnemonic": "0.1.1",
|
46
46
|
"@boxyhq/metrics": "0.2.6",
|
47
|
-
"@boxyhq/saml20": "1.4.
|
47
|
+
"@boxyhq/saml20": "1.4.2",
|
48
48
|
"@googleapis/admin": "15.0.0",
|
49
49
|
"axios": "1.6.7",
|
50
50
|
"encoding": "0.1.13",
|
@@ -53,26 +53,26 @@
|
|
53
53
|
"mixpanel": "0.18.0",
|
54
54
|
"mongodb": "6.3.0",
|
55
55
|
"mssql": "10.0.2",
|
56
|
-
"mysql2": "3.9.
|
56
|
+
"mysql2": "3.9.1",
|
57
57
|
"node-forge": "1.3.1",
|
58
58
|
"openid-client": "5.6.4",
|
59
59
|
"pg": "8.11.3",
|
60
60
|
"redis": "4.6.12",
|
61
61
|
"reflect-metadata": "0.2.1",
|
62
62
|
"ripemd160": "2.0.2",
|
63
|
-
"typeorm": "0.3.
|
63
|
+
"typeorm": "0.3.20",
|
64
64
|
"xml2js": "0.6.2",
|
65
65
|
"xmlbuilder": "15.1.1"
|
66
66
|
},
|
67
67
|
"devDependencies": {
|
68
68
|
"@faker-js/faker": "8.4.0",
|
69
69
|
"@types/lodash": "4.14.202",
|
70
|
-
"@types/node": "20.11.
|
70
|
+
"@types/node": "20.11.10",
|
71
71
|
"@types/sinon": "17.0.3",
|
72
72
|
"@types/tap": "15.0.11",
|
73
73
|
"cross-env": "7.0.3",
|
74
74
|
"migrate-mongo": "11.0.0",
|
75
|
-
"nock": "13.5.
|
75
|
+
"nock": "13.5.1",
|
76
76
|
"sinon": "17.0.1",
|
77
77
|
"tap": "18.7.0",
|
78
78
|
"ts-node": "10.9.2",
|