@qelos/plugin-play 3.1.4 → 3.1.6
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/authentication.js +43 -10
- package/dist/authentication.js.map +1 -1
- package/dist/logger.d.ts +5 -0
- package/dist/logger.js +12 -0
- package/dist/logger.js.map +1 -0
- package/dist/response-error.d.ts +5 -0
- package/dist/response-error.js +13 -0
- package/dist/response-error.js.map +1 -0
- package/package.json +1 -1
- package/src/authentication.ts +44 -11
- package/src/logger.ts +14 -0
- package/src/response-error.ts +8 -0
package/dist/authentication.js
CHANGED
|
@@ -3,6 +3,8 @@ import manifest from './manifest';
|
|
|
3
3
|
import handlers, { onCallback, onFrontendAuthorization, onNewTenant, onRefreshToken } from './handlers';
|
|
4
4
|
import config from './config';
|
|
5
5
|
import { getSdk, getSdkForUrl } from './sdk';
|
|
6
|
+
import { ResponseError } from './response-error';
|
|
7
|
+
import logger from './logger';
|
|
6
8
|
const notAuthorized = { message: 'you are not authorized' };
|
|
7
9
|
function getHostname(fullUrl) {
|
|
8
10
|
if (!fullUrl.startsWith('http')) {
|
|
@@ -105,12 +107,23 @@ export function getRegisterRoute() {
|
|
|
105
107
|
const tenantSdk = getSdkForUrl(appUrl);
|
|
106
108
|
const emailSplit = email.split('@');
|
|
107
109
|
if (emailSplit.length === 2 && getHostname(appUrl) !== emailSplit[1].split(':')[0]) {
|
|
108
|
-
throw new
|
|
110
|
+
throw new ResponseError('email must be provided from the same app url: ' + appUrl);
|
|
109
111
|
}
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
112
|
+
let currentAuthPayload;
|
|
113
|
+
try {
|
|
114
|
+
// email will be: {pluginId}.{tenantId}@${tenantHostname}
|
|
115
|
+
const { payload } = await tenantSdk.authentication.oAuthSignin({ email, password });
|
|
116
|
+
if (!payload.user?.roles?.includes('plugin')) {
|
|
117
|
+
throw new ResponseError('should retrieve a plugin user to app: ' + appUrl);
|
|
118
|
+
}
|
|
119
|
+
currentAuthPayload = payload;
|
|
120
|
+
}
|
|
121
|
+
catch (err) {
|
|
122
|
+
logger.error('failure during login to qelos app', { email, appUrl, err });
|
|
123
|
+
if (err instanceof ResponseError) {
|
|
124
|
+
throw err;
|
|
125
|
+
}
|
|
126
|
+
throw new ResponseError('failed to login to qelos tenant: ' + appUrl);
|
|
114
127
|
}
|
|
115
128
|
const newPayload = {
|
|
116
129
|
sub: '',
|
|
@@ -142,25 +155,41 @@ export function getRegisterRoute() {
|
|
|
142
155
|
appUrl,
|
|
143
156
|
email,
|
|
144
157
|
password,
|
|
145
|
-
currentAuthPayload
|
|
158
|
+
currentAuthPayload
|
|
146
159
|
});
|
|
147
160
|
newPayload.sub = user._id;
|
|
148
161
|
return { payload: newPayload };
|
|
149
162
|
});
|
|
150
163
|
}
|
|
164
|
+
function getMissingCredentialsError({ email, password, appUrl }) {
|
|
165
|
+
if (email && password && appUrl) {
|
|
166
|
+
return null;
|
|
167
|
+
}
|
|
168
|
+
const missing = [];
|
|
169
|
+
if (email) {
|
|
170
|
+
missing.push('email');
|
|
171
|
+
}
|
|
172
|
+
if (password) {
|
|
173
|
+
missing.push('password');
|
|
174
|
+
}
|
|
175
|
+
if (appUrl) {
|
|
176
|
+
missing.push('appUrl');
|
|
177
|
+
}
|
|
178
|
+
return { message: 'missing credentials: ' + missing.join(', ') };
|
|
179
|
+
}
|
|
151
180
|
return {
|
|
152
181
|
method: 'POST',
|
|
153
182
|
url: manifest.registerUrl,
|
|
154
183
|
handler: async (request, reply) => {
|
|
155
|
-
const
|
|
156
|
-
if (
|
|
184
|
+
const missingErr = getMissingCredentialsError(request.body || {});
|
|
185
|
+
if (missingErr) {
|
|
157
186
|
reply.statusCode = 401;
|
|
158
|
-
return
|
|
187
|
+
return missingErr;
|
|
159
188
|
}
|
|
160
189
|
try {
|
|
161
190
|
if (handlers.newTenant.length) {
|
|
162
191
|
for (let handler of handlers.newTenant) {
|
|
163
|
-
const result = await handler(
|
|
192
|
+
const result = await handler(request.body, request);
|
|
164
193
|
if (result?.payload) {
|
|
165
194
|
return {
|
|
166
195
|
[manifest.authAcquire.refreshTokenKey]: jwt.sign(result.payload, config.refreshTokenSecret, { expiresIn: '90d' }),
|
|
@@ -174,6 +203,10 @@ export function getRegisterRoute() {
|
|
|
174
203
|
if (config.dev) {
|
|
175
204
|
console.log(err);
|
|
176
205
|
}
|
|
206
|
+
if (err instanceof ResponseError) {
|
|
207
|
+
reply.statusCode = err.status;
|
|
208
|
+
return { message: err.responseMessage };
|
|
209
|
+
}
|
|
177
210
|
}
|
|
178
211
|
reply.statusCode = 401;
|
|
179
212
|
return notAuthorized;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"authentication.js","sourceRoot":"","sources":["../src/authentication.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"authentication.js","sourceRoot":"","sources":["../src/authentication.ts"],"names":[],"mappings":"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"}
|
package/dist/logger.d.ts
ADDED
package/dist/logger.js
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import config from './config';
|
|
2
|
+
const showLogs = config.dev || process.env.VERBOSE_LOGS;
|
|
3
|
+
const logger = {
|
|
4
|
+
log: (() => undefined),
|
|
5
|
+
error: (() => undefined)
|
|
6
|
+
};
|
|
7
|
+
if (showLogs) {
|
|
8
|
+
logger.log = console.log;
|
|
9
|
+
logger.error = console.error;
|
|
10
|
+
}
|
|
11
|
+
export default logger;
|
|
12
|
+
//# sourceMappingURL=logger.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"logger.js","sourceRoot":"","sources":["../src/logger.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,UAAU,CAAC;AAE9B,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC;AACxD,MAAM,MAAM,GAAG;IACb,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC,SAAS,CAA+B;IACpD,KAAK,EAAE,CAAC,GAAG,EAAE,CAAC,SAAS,CAA+B;CACvD,CAAA;AAED,IAAI,QAAQ,EAAE;IACZ,MAAM,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;IACzB,MAAM,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;CAC9B;AAED,eAAe,MAAM,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export class ResponseError extends Error {
|
|
2
|
+
status;
|
|
3
|
+
responseMessage;
|
|
4
|
+
constructor(message, status = 401, responseMessage) {
|
|
5
|
+
super(message);
|
|
6
|
+
this.status = status;
|
|
7
|
+
this.responseMessage = responseMessage;
|
|
8
|
+
if (!this.responseMessage) {
|
|
9
|
+
this.responseMessage = message;
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=response-error.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"response-error.js","sourceRoot":"","sources":["../src/response-error.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,aAAc,SAAQ,KAAK;IACF;IAA6B;IAAjE,YAAY,OAAe,EAAS,SAAiB,GAAG,EAAS,eAAwB;QACvF,KAAK,CAAC,OAAO,CAAC,CAAA;QADoB,WAAM,GAAN,MAAM,CAAc;QAAS,oBAAe,GAAf,eAAe,CAAS;QAEvF,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE;YACzB,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC;SAChC;IACH,CAAC;CACF"}
|
package/package.json
CHANGED
package/src/authentication.ts
CHANGED
|
@@ -5,11 +5,13 @@ import manifest from './manifest';
|
|
|
5
5
|
import handlers, {onCallback, onFrontendAuthorization, onNewTenant, onRefreshToken, StandardPayload} from './handlers';
|
|
6
6
|
import config from './config';
|
|
7
7
|
import {getSdk, getSdkForUrl} from './sdk';
|
|
8
|
+
import {ResponseError} from './response-error';
|
|
9
|
+
import logger from './logger';
|
|
8
10
|
|
|
9
11
|
const notAuthorized = {message: 'you are not authorized'};
|
|
10
12
|
|
|
11
13
|
function getHostname(fullUrl: string) {
|
|
12
|
-
if(!fullUrl.startsWith('http')) {
|
|
14
|
+
if (!fullUrl.startsWith('http')) {
|
|
13
15
|
fullUrl = 'https://' + fullUrl;
|
|
14
16
|
}
|
|
15
17
|
const url = new URL(fullUrl);
|
|
@@ -120,12 +122,22 @@ export function getRegisterRoute(): RouteOptions {
|
|
|
120
122
|
const tenantSdk = getSdkForUrl(appUrl)
|
|
121
123
|
const emailSplit = email.split('@');
|
|
122
124
|
if (emailSplit.length === 2 && getHostname(appUrl) !== emailSplit[1].split(':')[0]) {
|
|
123
|
-
throw new
|
|
125
|
+
throw new ResponseError('email must be provided from the same app url: ' + appUrl);
|
|
124
126
|
}
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
127
|
+
let currentAuthPayload;
|
|
128
|
+
try {
|
|
129
|
+
// email will be: {pluginId}.{tenantId}@${tenantHostname}
|
|
130
|
+
const {payload} = await tenantSdk.authentication.oAuthSignin({email, password});
|
|
131
|
+
if (!payload.user?.roles?.includes('plugin')) {
|
|
132
|
+
throw new ResponseError('should retrieve a plugin user to app: ' + appUrl);
|
|
133
|
+
}
|
|
134
|
+
currentAuthPayload = payload;
|
|
135
|
+
} catch (err) {
|
|
136
|
+
logger.error('failure during login to qelos app', {email, appUrl, err})
|
|
137
|
+
if (err instanceof ResponseError) {
|
|
138
|
+
throw err;
|
|
139
|
+
}
|
|
140
|
+
throw new ResponseError('failed to login to qelos tenant: ' + appUrl);
|
|
129
141
|
}
|
|
130
142
|
const newPayload: StandardPayload = {
|
|
131
143
|
sub: '',
|
|
@@ -157,26 +169,43 @@ export function getRegisterRoute(): RouteOptions {
|
|
|
157
169
|
appUrl,
|
|
158
170
|
email,
|
|
159
171
|
password,
|
|
160
|
-
currentAuthPayload
|
|
172
|
+
currentAuthPayload
|
|
161
173
|
})
|
|
162
174
|
newPayload.sub = user._id;
|
|
163
175
|
return {payload: newPayload};
|
|
164
176
|
})
|
|
165
177
|
}
|
|
166
178
|
|
|
179
|
+
function getMissingCredentialsError({email, password, appUrl}: any) {
|
|
180
|
+
if (email && password && appUrl) {
|
|
181
|
+
return null;
|
|
182
|
+
}
|
|
183
|
+
const missing = [];
|
|
184
|
+
if (email) {
|
|
185
|
+
missing.push('email');
|
|
186
|
+
}
|
|
187
|
+
if (password) {
|
|
188
|
+
missing.push('password');
|
|
189
|
+
}
|
|
190
|
+
if (appUrl) {
|
|
191
|
+
missing.push('appUrl');
|
|
192
|
+
}
|
|
193
|
+
return {message: 'missing credentials: ' + missing.join(', ')}
|
|
194
|
+
}
|
|
195
|
+
|
|
167
196
|
return {
|
|
168
197
|
method: 'POST',
|
|
169
198
|
url: manifest.registerUrl,
|
|
170
199
|
handler: async (request, reply) => {
|
|
171
|
-
const
|
|
172
|
-
if (
|
|
200
|
+
const missingErr = getMissingCredentialsError(request.body || {});
|
|
201
|
+
if (missingErr) {
|
|
173
202
|
reply.statusCode = 401;
|
|
174
|
-
return
|
|
203
|
+
return missingErr;
|
|
175
204
|
}
|
|
176
205
|
try {
|
|
177
206
|
if (handlers.newTenant.length) {
|
|
178
207
|
for (let handler of handlers.newTenant) {
|
|
179
|
-
const result = await handler(
|
|
208
|
+
const result = await handler(request.body, request);
|
|
180
209
|
if (result?.payload as StandardPayload) {
|
|
181
210
|
return {
|
|
182
211
|
[manifest.authAcquire.refreshTokenKey]: jwt.sign(result.payload, config.refreshTokenSecret, {expiresIn: '90d'}),
|
|
@@ -189,6 +218,10 @@ export function getRegisterRoute(): RouteOptions {
|
|
|
189
218
|
if (config.dev) {
|
|
190
219
|
console.log(err);
|
|
191
220
|
}
|
|
221
|
+
if (err instanceof ResponseError) {
|
|
222
|
+
reply.statusCode = err.status;
|
|
223
|
+
return {message: err.responseMessage};
|
|
224
|
+
}
|
|
192
225
|
}
|
|
193
226
|
reply.statusCode = 401;
|
|
194
227
|
return notAuthorized;
|
package/src/logger.ts
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import config from './config';
|
|
2
|
+
|
|
3
|
+
const showLogs = config.dev || process.env.VERBOSE_LOGS;
|
|
4
|
+
const logger = {
|
|
5
|
+
log: (() => undefined) as ((...data: any[]) => void),
|
|
6
|
+
error: (() => undefined) as ((...data: any[]) => void)
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
if (showLogs) {
|
|
10
|
+
logger.log = console.log;
|
|
11
|
+
logger.error = console.error;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
export default logger;
|