@webda/core 1.2.1 → 1.6.0-beta.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/lib/application.d.ts +3 -0
- package/lib/application.js +26 -22
- package/lib/application.js.map +1 -1
- package/lib/application.spec.js +185 -2
- package/lib/application.spec.js.map +1 -1
- package/lib/core.d.ts +62 -6
- package/lib/core.js +127 -86
- package/lib/core.js.map +1 -1
- package/lib/core.spec.js +151 -6
- package/lib/core.spec.js.map +1 -1
- package/lib/index.d.ts +4 -0
- package/lib/index.js +4 -0
- package/lib/index.js.map +1 -1
- package/lib/models/aclmodel.d.ts +42 -3
- package/lib/models/aclmodel.js +58 -3
- package/lib/models/aclmodel.js.map +1 -1
- package/lib/models/aclmodel.spec.js +46 -0
- package/lib/models/aclmodel.spec.js.map +1 -1
- package/lib/models/coremodel.d.ts +58 -10
- package/lib/models/coremodel.js +39 -32
- package/lib/models/coremodel.js.map +1 -1
- package/lib/models/coremodel.spec.js +68 -6
- package/lib/models/coremodel.spec.js.map +1 -1
- package/lib/models/ident.d.ts +8 -2
- package/lib/models/ident.js.map +1 -1
- package/lib/models/ident.spec.js +16 -0
- package/lib/models/ident.spec.js.map +1 -1
- package/lib/models/ownermodel.d.ts +1 -1
- package/lib/models/ownermodel.js.map +1 -1
- package/lib/models/ownermodel.spec.js +22 -19
- package/lib/models/ownermodel.spec.js.map +1 -1
- package/lib/models/user.d.ts +2 -0
- package/lib/models/user.js +4 -2
- package/lib/models/user.js.map +1 -1
- package/lib/models/user.spec.js +9 -2
- package/lib/models/user.spec.js.map +1 -1
- package/lib/queues/filequeue.d.ts +63 -0
- package/lib/queues/filequeue.js +161 -0
- package/lib/queues/filequeue.js.map +1 -0
- package/lib/queues/filequeue.spec.d.ts +1 -0
- package/lib/queues/filequeue.spec.js +90 -0
- package/lib/queues/filequeue.spec.js.map +1 -0
- package/lib/queues/memoryqueue.d.ts +18 -4
- package/lib/queues/memoryqueue.js +20 -13
- package/lib/queues/memoryqueue.js.map +1 -1
- package/lib/queues/memoryqueue.spec.js +142 -39
- package/lib/queues/memoryqueue.spec.js.map +1 -1
- package/lib/queues/pubsubservice.d.ts +27 -0
- package/lib/queues/pubsubservice.js +21 -0
- package/lib/queues/pubsubservice.js.map +1 -0
- package/lib/queues/queue.spec.js +16 -7
- package/lib/queues/queue.spec.js.map +1 -1
- package/lib/queues/queueservice.d.ts +108 -13
- package/lib/queues/queueservice.js +100 -36
- package/lib/queues/queueservice.js.map +1 -1
- package/lib/router.js +4 -6
- package/lib/router.js.map +1 -1
- package/lib/router.spec.js +27 -2
- package/lib/router.spec.js.map +1 -1
- package/lib/services/asyncevents.d.ts +110 -5
- package/lib/services/asyncevents.js +134 -39
- package/lib/services/asyncevents.js.map +1 -1
- package/lib/services/asyncevents.spec.js +58 -4
- package/lib/services/asyncevents.spec.js.map +1 -1
- package/lib/services/authentication.d.ts +57 -5
- package/lib/services/authentication.js +93 -84
- package/lib/services/authentication.js.map +1 -1
- package/lib/services/authentication.spec.js +118 -82
- package/lib/services/authentication.spec.js.map +1 -1
- package/lib/services/binary.d.ts +175 -48
- package/lib/services/binary.js +205 -170
- package/lib/services/binary.js.map +1 -1
- package/lib/services/binary.spec.d.ts +22 -3
- package/lib/services/binary.spec.js +327 -22
- package/lib/services/binary.spec.js.map +1 -1
- package/lib/services/configuration.d.ts +94 -13
- package/lib/services/configuration.js +98 -28
- package/lib/services/configuration.js.map +1 -1
- package/lib/services/configuration.spec.js +40 -1
- package/lib/services/configuration.spec.js.map +1 -1
- package/lib/services/cron.d.ts +4 -4
- package/lib/services/cron.js +37 -53
- package/lib/services/cron.js.map +1 -1
- package/lib/services/cron.spec.d.ts +1 -0
- package/lib/services/cron.spec.js +76 -0
- package/lib/services/cron.spec.js.map +1 -0
- package/lib/services/debugmailer.spec.js +18 -4
- package/lib/services/debugmailer.spec.js.map +1 -1
- package/lib/services/echo.js +22 -13
- package/lib/services/echo.js.map +1 -1
- package/lib/services/echo.spec.d.ts +1 -0
- package/lib/services/echo.spec.js +52 -0
- package/lib/services/echo.spec.js.map +1 -0
- package/lib/services/filebinary.d.ts +16 -9
- package/lib/services/filebinary.js +58 -73
- package/lib/services/filebinary.js.map +1 -1
- package/lib/services/filebinary.spec.d.ts +8 -1
- package/lib/services/filebinary.spec.js +133 -7
- package/lib/services/filebinary.spec.js.map +1 -1
- package/lib/services/fileconfiguration.d.ts +9 -3
- package/lib/services/fileconfiguration.js +13 -6
- package/lib/services/fileconfiguration.js.map +1 -1
- package/lib/services/fileconfiguration.spec.js +100 -5
- package/lib/services/fileconfiguration.spec.js.map +1 -1
- package/lib/services/kubernetesconfiguration.d.ts +8 -2
- package/lib/services/kubernetesconfiguration.js +16 -5
- package/lib/services/kubernetesconfiguration.js.map +1 -1
- package/lib/services/kubernetesconfiguration.spec.js +53 -16
- package/lib/services/kubernetesconfiguration.spec.js.map +1 -1
- package/lib/services/mailer.d.ts +11 -2
- package/lib/services/mailer.js +28 -34
- package/lib/services/mailer.js.map +1 -1
- package/lib/services/mailer.spec.js +69 -23
- package/lib/services/mailer.spec.js.map +1 -1
- package/lib/services/oauth.d.ts +5 -2
- package/lib/services/oauth.js +22 -8
- package/lib/services/oauth.js.map +1 -1
- package/lib/services/oauth.spec.js +33 -3
- package/lib/services/oauth.spec.js.map +1 -1
- package/lib/services/resource.spec.js +39 -2
- package/lib/services/resource.spec.js.map +1 -1
- package/lib/services/service.d.ts +16 -0
- package/lib/services/service.js +47 -6
- package/lib/services/service.js.map +1 -1
- package/lib/services/service.spec.d.ts +1 -0
- package/lib/services/service.spec.js +119 -0
- package/lib/services/service.spec.js.map +1 -0
- package/lib/stores/aggregator.d.ts +43 -0
- package/lib/stores/aggregator.js +106 -0
- package/lib/stores/aggregator.js.map +1 -0
- package/lib/stores/file.d.ts +49 -11
- package/lib/stores/file.js +84 -81
- package/lib/stores/file.js.map +1 -1
- package/lib/stores/file.spec.d.ts +6 -1
- package/lib/stores/file.spec.js +134 -9
- package/lib/stores/file.spec.js.map +1 -1
- package/lib/stores/mapper.d.ts +151 -0
- package/lib/stores/mapper.js +294 -0
- package/lib/stores/mapper.js.map +1 -0
- package/lib/stores/mapper.spec.d.ts +1 -0
- package/lib/stores/mapper.spec.js +55 -0
- package/lib/stores/mapper.spec.js.map +1 -0
- package/lib/stores/memory.d.ts +52 -7
- package/lib/stores/memory.js +71 -33
- package/lib/stores/memory.js.map +1 -1
- package/lib/stores/memory.spec.d.ts +6 -1
- package/lib/stores/memory.spec.js +65 -4
- package/lib/stores/memory.spec.js.map +1 -1
- package/lib/stores/store.d.ts +263 -126
- package/lib/stores/store.js +285 -493
- package/lib/stores/store.js.map +1 -1
- package/lib/stores/store.spec.d.ts +20 -0
- package/lib/stores/store.spec.js +242 -18
- package/lib/stores/store.spec.js.map +1 -1
- package/lib/test.d.ts +1 -7
- package/lib/test.js +3 -12
- package/lib/test.js.map +1 -1
- package/lib/utils/abstractdeployer.spec.d.ts +1 -0
- package/lib/utils/abstractdeployer.spec.js +23 -0
- package/lib/utils/abstractdeployer.spec.js.map +1 -0
- package/lib/utils/context.d.ts +25 -2
- package/lib/utils/context.js +33 -12
- package/lib/utils/context.js.map +1 -1
- package/lib/utils/context.spec.js +81 -11
- package/lib/utils/context.spec.js.map +1 -1
- package/lib/utils/cookie.d.ts +12 -0
- package/lib/utils/cookie.js +13 -1
- package/lib/utils/cookie.js.map +1 -1
- package/lib/utils/cookie.spec.js +42 -11
- package/lib/utils/cookie.spec.js.map +1 -1
- package/lib/utils/logger.d.ts +23 -4
- package/lib/utils/logger.js +29 -6
- package/lib/utils/logger.js.map +1 -1
- package/lib/utils/logger.spec.js +8 -0
- package/lib/utils/logger.spec.js.map +1 -1
- package/lib/utils/serializers.d.ts +5 -5
- package/lib/utils/serializers.js +10 -10
- package/lib/utils/serializers.js.map +1 -1
- package/lib/utils/serializers.spec.js +41 -16
- package/lib/utils/serializers.spec.js.map +1 -1
- package/lib/utils/waiter.d.ts +59 -1
- package/lib/utils/waiter.js +86 -3
- package/lib/utils/waiter.js.map +1 -1
- package/lib/utils/waiter.spec.js +48 -4
- package/lib/utils/waiter.spec.js.map +1 -1
- package/package.json +16 -11
- package/test/badapp/package.json +4 -0
- package/test/badapp/webda.config.json +1 -0
- package/test/cachedapp/webda.config.json +7 -0
- package/test/config-file-no-reload.json +70 -0
- package/test/config-file-reload.json +7 -1
- package/test/config-kube-reload.json +7 -1
- package/test/config.json +45 -21
- package/test/config.old-default.json +0 -16
- package/test/config.old.json +0 -16
- package/test/deployments/invalid.json +1 -0
- package/test/moddas/fakeservice.js +5 -0
- package/test/models/ident.js +10 -14
- package/test/models/task.js +2 -4
|
@@ -27,8 +27,8 @@ class PasswordRecoveryInfos {
|
|
|
27
27
|
exports.PasswordRecoveryInfos = PasswordRecoveryInfos;
|
|
28
28
|
class AuthenticationParameters extends service_1.ServiceParameters {
|
|
29
29
|
constructor(params) {
|
|
30
|
-
var _a, _b, _c, _d, _e;
|
|
31
|
-
var
|
|
30
|
+
var _a, _b, _c, _d, _e, _f;
|
|
31
|
+
var _g, _h;
|
|
32
32
|
super(params);
|
|
33
33
|
(_a = this.identStore) !== null && _a !== void 0 ? _a : (this.identStore = "idents");
|
|
34
34
|
(_b = this.userStore) !== null && _b !== void 0 ? _b : (this.userStore = "users");
|
|
@@ -37,7 +37,8 @@ class AuthenticationParameters extends service_1.ServiceParameters {
|
|
|
37
37
|
regexp: ".{8,}"
|
|
38
38
|
});
|
|
39
39
|
if (this.email) {
|
|
40
|
-
(_e = (
|
|
40
|
+
(_e = (_g = this.email).delay) !== null && _e !== void 0 ? _e : (_g.delay = 3600000 * 4);
|
|
41
|
+
(_f = (_h = this.email).failedLoginBeforeDelay) !== null && _f !== void 0 ? _f : (_h.failedLoginBeforeDelay = 3);
|
|
41
42
|
}
|
|
42
43
|
}
|
|
43
44
|
}
|
|
@@ -193,13 +194,21 @@ class Authentication extends service_1.Service {
|
|
|
193
194
|
if (this.parameters.password.verifier) {
|
|
194
195
|
this._passwordVerifier = this.getService(this.parameters.password.verifier);
|
|
195
196
|
}
|
|
196
|
-
if (this.
|
|
197
|
-
throw Error("
|
|
197
|
+
if (this.parameters.email && this.getMailMan() === undefined) {
|
|
198
|
+
throw Error("email authentication requires a Mailer service");
|
|
198
199
|
}
|
|
199
200
|
}
|
|
200
201
|
addProvider(name) {
|
|
201
202
|
this.providers.add(name);
|
|
202
203
|
}
|
|
204
|
+
/**
|
|
205
|
+
* Send or resend an email to validate the email address
|
|
206
|
+
*
|
|
207
|
+
* @param ctx
|
|
208
|
+
* @throws 409 if ident is linked to someone else
|
|
209
|
+
* @throws 412 if the email is already validated
|
|
210
|
+
* @throws 429 if a validation email has been sent recently
|
|
211
|
+
*/
|
|
203
212
|
_sendEmailValidation(ctx) {
|
|
204
213
|
return __awaiter(this, void 0, void 0, function* () {
|
|
205
214
|
let identKey = ctx.parameters.email + "_email";
|
|
@@ -212,12 +221,15 @@ class Authentication extends service_1.Service {
|
|
|
212
221
|
});
|
|
213
222
|
}
|
|
214
223
|
else {
|
|
224
|
+
// If the ident is linked to someone else - might want to remove it
|
|
215
225
|
if (ident.getUser() !== ctx.getCurrentUserId()) {
|
|
216
226
|
throw 409;
|
|
217
227
|
}
|
|
228
|
+
// If the email is already validated
|
|
218
229
|
if (ident._validation) {
|
|
219
230
|
throw 412;
|
|
220
231
|
}
|
|
232
|
+
//
|
|
221
233
|
if (ident._lastValidationEmail >= Date.now() - this.parameters.email.delay) {
|
|
222
234
|
throw 429;
|
|
223
235
|
}
|
|
@@ -252,27 +264,6 @@ class Authentication extends service_1.Service {
|
|
|
252
264
|
ctx.write(Array.from(this.providers));
|
|
253
265
|
});
|
|
254
266
|
}
|
|
255
|
-
_registerNewEmail(ctx) {
|
|
256
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
257
|
-
if (!ctx.getCurrentUserId()) {
|
|
258
|
-
throw 403;
|
|
259
|
-
}
|
|
260
|
-
let ident = yield this._identsStore.get(ctx.body.email + "_email");
|
|
261
|
-
if (ident) {
|
|
262
|
-
if (ident._validation) {
|
|
263
|
-
throw 409;
|
|
264
|
-
}
|
|
265
|
-
}
|
|
266
|
-
else {
|
|
267
|
-
yield this._identsStore.save({
|
|
268
|
-
uuid: `${ctx.body.email}_email`,
|
|
269
|
-
_lastValidationEmail: Date.now(),
|
|
270
|
-
_type: "email"
|
|
271
|
-
});
|
|
272
|
-
}
|
|
273
|
-
yield this.sendValidationEmail(ctx, ctx.body.email);
|
|
274
|
-
});
|
|
275
|
-
}
|
|
276
267
|
onIdentLogin(ctx, provider, identId, profile, tokens = undefined) {
|
|
277
268
|
return __awaiter(this, void 0, void 0, function* () {
|
|
278
269
|
// Auto postifx with provider name
|
|
@@ -335,11 +326,8 @@ class Authentication extends service_1.Service {
|
|
|
335
326
|
yield this.login(ctx, user, ident);
|
|
336
327
|
});
|
|
337
328
|
}
|
|
338
|
-
registerUser(ctx, datas, user =
|
|
329
|
+
registerUser(ctx, datas, user = this._usersStore.initModel()) {
|
|
339
330
|
return __awaiter(this, void 0, void 0, function* () {
|
|
340
|
-
if (!user) {
|
|
341
|
-
user = this._usersStore.initModel();
|
|
342
|
-
}
|
|
343
331
|
user.email = datas.email;
|
|
344
332
|
user.locale = ctx.getLocale();
|
|
345
333
|
yield this.emitSync("Authentication.Register", {
|
|
@@ -390,16 +378,16 @@ class Authentication extends service_1.Service {
|
|
|
390
378
|
yield this.sendRecoveryEmail(ctx, user, email);
|
|
391
379
|
});
|
|
392
380
|
}
|
|
393
|
-
_verifyPassword(password) {
|
|
381
|
+
_verifyPassword(password, user) {
|
|
394
382
|
return __awaiter(this, void 0, void 0, function* () {
|
|
395
383
|
if (this._passwordVerifier) {
|
|
396
|
-
if (!(yield this._passwordVerifier.validate(password))) {
|
|
384
|
+
if (!(yield this._passwordVerifier.validate(password, user))) {
|
|
397
385
|
throw 400;
|
|
398
386
|
}
|
|
399
387
|
return;
|
|
400
388
|
}
|
|
401
389
|
let regexp = new RegExp(this.parameters.password.regexp);
|
|
402
|
-
if (
|
|
390
|
+
if (regexp.exec(password) === null) {
|
|
403
391
|
throw 400;
|
|
404
392
|
}
|
|
405
393
|
});
|
|
@@ -423,17 +411,23 @@ class Authentication extends service_1.Service {
|
|
|
423
411
|
if (body.expire < Date.now()) {
|
|
424
412
|
throw 410;
|
|
425
413
|
}
|
|
426
|
-
yield this._verifyPassword(body.password);
|
|
414
|
+
yield this._verifyPassword(body.password, user);
|
|
415
|
+
let password = this.hashPassword(body.password);
|
|
427
416
|
yield this._usersStore.patch({
|
|
428
|
-
__password:
|
|
417
|
+
__password: password,
|
|
429
418
|
uuid: body.login.toLowerCase()
|
|
430
419
|
});
|
|
420
|
+
yield this.emitSync("Authentication.PasswordUpdate", {
|
|
421
|
+
user,
|
|
422
|
+
password,
|
|
423
|
+
context: ctx
|
|
424
|
+
});
|
|
431
425
|
});
|
|
432
426
|
}
|
|
433
427
|
_handleEmailCallback(ctx) {
|
|
434
428
|
return __awaiter(this, void 0, void 0, function* () {
|
|
435
429
|
if (!ctx.parameter("token")) {
|
|
436
|
-
throw
|
|
430
|
+
throw 400;
|
|
437
431
|
}
|
|
438
432
|
let validation = ctx.parameter("token");
|
|
439
433
|
if (validation !== this.generateEmailValidationToken(ctx.parameter("user"), ctx.parameter("email"))) {
|
|
@@ -450,8 +444,15 @@ class Authentication extends service_1.Service {
|
|
|
450
444
|
});
|
|
451
445
|
return;
|
|
452
446
|
}
|
|
447
|
+
if (!ctx.parameter("user")) {
|
|
448
|
+
ctx.writeHead(302, {
|
|
449
|
+
Location: `${this.parameters.registerRedirect}?token=${ctx.parameter("token")}&email=${ctx.parameter("email")}`
|
|
450
|
+
});
|
|
451
|
+
return;
|
|
452
|
+
}
|
|
453
453
|
var uuid = ctx.parameter("email") + "_email";
|
|
454
454
|
let ident = yield this._identsStore.get(uuid);
|
|
455
|
+
// Would mean the ident got delete in the mean time... hyper low likely hood
|
|
455
456
|
if (ident === undefined) {
|
|
456
457
|
ident = this._identsStore.initModel({
|
|
457
458
|
uuid
|
|
@@ -467,37 +468,42 @@ class Authentication extends service_1.Service {
|
|
|
467
468
|
});
|
|
468
469
|
});
|
|
469
470
|
}
|
|
471
|
+
/**
|
|
472
|
+
* Send an email to recover the user password
|
|
473
|
+
*
|
|
474
|
+
* @param ctx
|
|
475
|
+
* @param user
|
|
476
|
+
* @param email
|
|
477
|
+
* @returns
|
|
478
|
+
*/
|
|
470
479
|
sendRecoveryEmail(ctx, user, email) {
|
|
471
480
|
return __awaiter(this, void 0, void 0, function* () {
|
|
472
481
|
let infos = yield this.getPasswordRecoveryInfos(user);
|
|
473
482
|
var mailer = this.getMailMan();
|
|
474
|
-
let locale = user.locale;
|
|
475
|
-
if (!locale) {
|
|
476
|
-
locale = ctx.getLocale();
|
|
477
|
-
}
|
|
478
|
-
let replacements = Object.assign(Object.assign({}, this.parameters.email), { infos, to: email, context: ctx });
|
|
483
|
+
let locale = user.locale || ctx.getLocale();
|
|
479
484
|
let mailOptions = {
|
|
480
485
|
to: email,
|
|
481
486
|
locale: locale,
|
|
482
|
-
template: "
|
|
483
|
-
replacements:
|
|
487
|
+
template: "EMAIL_RECOVERY",
|
|
488
|
+
replacements: Object.assign(Object.assign({}, this.parameters.email), { infos, to: email, context: ctx })
|
|
484
489
|
};
|
|
485
|
-
if (!user.locale) {
|
|
486
|
-
mailOptions.locale = ctx.getLocale();
|
|
487
|
-
}
|
|
488
490
|
return mailer.send(mailOptions);
|
|
489
491
|
});
|
|
490
492
|
}
|
|
493
|
+
/**
|
|
494
|
+
* Send an email to validate the user email by sending a unique link to
|
|
495
|
+
* his email
|
|
496
|
+
*
|
|
497
|
+
* @param ctx
|
|
498
|
+
* @param email
|
|
499
|
+
* @returns
|
|
500
|
+
*/
|
|
491
501
|
sendValidationEmail(ctx, email) {
|
|
492
502
|
return __awaiter(this, void 0, void 0, function* () {
|
|
493
503
|
var mailer = this.getMailMan();
|
|
494
504
|
let replacements = Object.assign(Object.assign({}, this.parameters.email), { context: ctx, url: ctx
|
|
495
505
|
.getHttpContext()
|
|
496
|
-
.getAbsoluteUrl(this.parameters.url
|
|
497
|
-
"/email/callback?email=" +
|
|
498
|
-
email +
|
|
499
|
-
"&token=" +
|
|
500
|
-
this.generateEmailValidationToken(ctx.getCurrentUserId(), email)) });
|
|
506
|
+
.getAbsoluteUrl(`${this.parameters.url}/email/callback?email=${email}&token=${this.generateEmailValidationToken(ctx.getCurrentUserId(), email)}`) });
|
|
501
507
|
let userId = ctx.getCurrentUserId();
|
|
502
508
|
if (userId && userId.length > 0) {
|
|
503
509
|
replacements.url += "&user=" + userId;
|
|
@@ -505,7 +511,7 @@ class Authentication extends service_1.Service {
|
|
|
505
511
|
let mailOptions = {
|
|
506
512
|
to: email,
|
|
507
513
|
locale: ctx.getLocale(),
|
|
508
|
-
template: "
|
|
514
|
+
template: "EMAIL_REGISTER",
|
|
509
515
|
replacements: replacements
|
|
510
516
|
};
|
|
511
517
|
return mailer.send(mailOptions);
|
|
@@ -560,7 +566,8 @@ class Authentication extends service_1.Service {
|
|
|
560
566
|
var event = {
|
|
561
567
|
context: ctx,
|
|
562
568
|
userId: "",
|
|
563
|
-
identId:
|
|
569
|
+
identId: ident.uuid,
|
|
570
|
+
ident
|
|
564
571
|
};
|
|
565
572
|
if (typeof user == "object") {
|
|
566
573
|
event.userId = user.uuid;
|
|
@@ -569,13 +576,6 @@ class Authentication extends service_1.Service {
|
|
|
569
576
|
else {
|
|
570
577
|
event.userId = user;
|
|
571
578
|
}
|
|
572
|
-
if (typeof ident == "object") {
|
|
573
|
-
event.identId = ident.uuid;
|
|
574
|
-
event.ident = ident;
|
|
575
|
-
}
|
|
576
|
-
else {
|
|
577
|
-
event.identId = ident;
|
|
578
|
-
}
|
|
579
579
|
event.context = ctx;
|
|
580
580
|
ctx.getSession().login(event.userId, event.identId);
|
|
581
581
|
return this.emitSync("Authentication.Login", event);
|
|
@@ -584,7 +584,14 @@ class Authentication extends service_1.Service {
|
|
|
584
584
|
getMailMan() {
|
|
585
585
|
return this.getService(this.parameters.email.mailer ? this.parameters.email.mailer : "Mailer");
|
|
586
586
|
}
|
|
587
|
+
/**
|
|
588
|
+
* Handle a user login request
|
|
589
|
+
*
|
|
590
|
+
* @param ctx
|
|
591
|
+
* @param ident
|
|
592
|
+
*/
|
|
587
593
|
handleLogin(ctx, ident) {
|
|
594
|
+
var _a;
|
|
588
595
|
return __awaiter(this, void 0, void 0, function* () {
|
|
589
596
|
let updates = {};
|
|
590
597
|
let user = yield this._usersStore.get(ident.getUser());
|
|
@@ -605,10 +612,8 @@ class Authentication extends service_1.Service {
|
|
|
605
612
|
user,
|
|
606
613
|
context: ctx
|
|
607
614
|
});
|
|
608
|
-
|
|
609
|
-
|
|
610
|
-
}
|
|
611
|
-
updates._failedLogin = ident._failedLogin++;
|
|
615
|
+
(_a = ident._failedLogin) !== null && _a !== void 0 ? _a : (ident._failedLogin = 0);
|
|
616
|
+
updates._failedLogin = ident._failedLogin + 1;
|
|
612
617
|
updates._lastFailedLogin = new Date();
|
|
613
618
|
updates.uuid = ident.uuid;
|
|
614
619
|
// Swalow exeception issue to double check !
|
|
@@ -620,31 +625,28 @@ class Authentication extends service_1.Service {
|
|
|
620
625
|
}
|
|
621
626
|
});
|
|
622
627
|
}
|
|
628
|
+
/**
|
|
629
|
+
* Handle the POST /auth/email
|
|
630
|
+
*
|
|
631
|
+
* @param ctx
|
|
632
|
+
* @returns
|
|
633
|
+
*/
|
|
623
634
|
_handleEmail(ctx) {
|
|
624
635
|
return __awaiter(this, void 0, void 0, function* () {
|
|
625
|
-
|
|
626
|
-
|
|
627
|
-
throw
|
|
636
|
+
// If called while logged in reject
|
|
637
|
+
if (ctx.getCurrentUserId() !== undefined) {
|
|
638
|
+
throw 410;
|
|
628
639
|
}
|
|
629
640
|
let body = ctx.getRequestBody();
|
|
630
|
-
|
|
631
|
-
if (body.email && !body.password) {
|
|
632
|
-
return this._registerNewEmail(ctx);
|
|
633
|
-
}
|
|
634
|
-
if (body.password === undefined || body.login === undefined) {
|
|
641
|
+
if (body.login === undefined) {
|
|
635
642
|
throw 400;
|
|
636
643
|
}
|
|
637
644
|
var mailConfig = this.parameters.email;
|
|
638
|
-
var mailerService = this.getMailMan();
|
|
639
|
-
if (mailerService === undefined) {
|
|
640
|
-
// Bad configuration ( might want to use other than 500 )
|
|
641
|
-
throw 500;
|
|
642
|
-
}
|
|
643
645
|
var uuid = body.login.toLowerCase() + "_email";
|
|
644
646
|
let ident = yield this._identsStore.get(uuid);
|
|
645
647
|
if (ident !== undefined && ident.getUser() !== undefined) {
|
|
646
648
|
// Register on an known user
|
|
647
|
-
if (!
|
|
649
|
+
if (!body.register) {
|
|
648
650
|
yield this.handleLogin(ctx, ident);
|
|
649
651
|
return;
|
|
650
652
|
}
|
|
@@ -656,14 +658,11 @@ class Authentication extends service_1.Service {
|
|
|
656
658
|
// TODO Handle add of email on authenticated user
|
|
657
659
|
var email = body.login.toLowerCase();
|
|
658
660
|
// Read the form
|
|
659
|
-
if (body.register
|
|
661
|
+
if (body.register) {
|
|
660
662
|
var validation = undefined;
|
|
661
663
|
// Need to check email before creation
|
|
662
664
|
if (!mailConfig.postValidation) {
|
|
663
665
|
if (body.token == this.generateEmailValidationToken(ctx.getCurrentUserId(), email)) {
|
|
664
|
-
if (body.user !== ctx.getCurrentUserId()) {
|
|
665
|
-
throw 412;
|
|
666
|
-
}
|
|
667
666
|
validation = new Date();
|
|
668
667
|
}
|
|
669
668
|
else {
|
|
@@ -672,12 +671,22 @@ class Authentication extends service_1.Service {
|
|
|
672
671
|
return this.sendValidationEmail(ctx, email);
|
|
673
672
|
}
|
|
674
673
|
}
|
|
674
|
+
if (!body.password) {
|
|
675
|
+
throw 400;
|
|
676
|
+
}
|
|
675
677
|
// Store with a _
|
|
676
678
|
body.__password = this.hashPassword(body.password);
|
|
677
679
|
yield this._verifyPassword(body.password);
|
|
680
|
+
// Remove useless attributes
|
|
678
681
|
delete body.password;
|
|
679
682
|
delete body.register;
|
|
683
|
+
delete body.token;
|
|
680
684
|
let user = yield this.registerUser(ctx, {}, body);
|
|
685
|
+
yield this.emitSync("Authentication.PasswordCreate", {
|
|
686
|
+
user,
|
|
687
|
+
password: body.__password,
|
|
688
|
+
context: ctx
|
|
689
|
+
});
|
|
681
690
|
user = yield this._usersStore.save(user);
|
|
682
691
|
var newIdent = this._identsStore.initModel({
|
|
683
692
|
uuid: uuid,
|
|
@@ -717,10 +726,10 @@ class Authentication extends service_1.Service {
|
|
|
717
726
|
}
|
|
718
727
|
}
|
|
719
728
|
__decorate([
|
|
720
|
-
service_1.Inject("identStore", "idents")
|
|
729
|
+
(0, service_1.Inject)("identStore", "idents")
|
|
721
730
|
], Authentication.prototype, "_identsStore", void 0);
|
|
722
731
|
__decorate([
|
|
723
|
-
service_1.Inject("userStore", "users")
|
|
732
|
+
(0, service_1.Inject)("userStore", "users")
|
|
724
733
|
], Authentication.prototype, "_usersStore", void 0);
|
|
725
734
|
exports.Authentication = Authentication;
|
|
726
735
|
//# sourceMappingURL=authentication.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"authentication.js","sourceRoot":"","sources":["../../src/services/authentication.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"authentication.js","sourceRoot":"","sources":["../../src/services/authentication.ts"],"names":[],"mappings":"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"}
|