From 5e37a96bc017471f8dc4cbdd57f2e8c3568bd97f Mon Sep 17 00:00:00 2001 From: Jakob Ankarhem Date: Mon, 15 Feb 2021 09:34:40 +0100 Subject: [PATCH] fix(auth): handle sign-in attempts from emails with no password (#933) * fix(auth): dont reject promise when missing password * fix(auth): use static fallback error message --- server/entity/User.ts | 4 ++-- server/routes/auth.ts | 5 ++++- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/server/entity/User.ts b/server/entity/User.ts index a6ed9bea2..31b2c4770 100644 --- a/server/entity/User.ts +++ b/server/entity/User.ts @@ -108,11 +108,11 @@ export class User { } public passwordMatch(password: string): Promise { - return new Promise((resolve, reject) => { + return new Promise((resolve) => { if (this.password) { resolve(bcrypt.compare(password, this.password)); } else { - return reject(false); + return resolve(false); } }); } diff --git a/server/routes/auth.ts b/server/routes/auth.ts index efa212e49..b8faabd0a 100644 --- a/server/routes/auth.ts +++ b/server/routes/auth.ts @@ -176,7 +176,10 @@ authRoutes.post('/local', async (req, res, next) => { return res.status(200).json(user?.filter() ?? {}); } catch (e) { - logger.error(e.message, { label: 'Auth' }); + logger.error('Something went wrong when trying to authenticate', { + label: 'Auth', + error: e.message, + }); return next({ status: 500, message: 'Something went wrong.',