Browse Source

don't allow disabled user to log in

not a security issue as permission handler would fail anyway
pull/1783/head
Bernd Storath 2 weeks ago
parent
commit
560ff81561
  1. 11
      src/server/api/session.post.ts

11
src/server/api/session.post.ts

@ -9,12 +9,21 @@ export default defineEventHandler(async (event) => {
// TODO: timing can be used to enumerate usernames // TODO: timing can be used to enumerate usernames
const user = await Database.users.getByUsername(username); const user = await Database.users.getByUsername(username);
if (!user) if (!user) {
throw createError({ throw createError({
statusCode: 401, statusCode: 401,
statusMessage: 'Incorrect credentials', statusMessage: 'Incorrect credentials',
}); });
}
if (!user.enabled) {
throw createError({
statusCode: 403,
statusMessage: 'User is disabled',
});
}
// todo: handle in service
const userHashPassword = user.password; const userHashPassword = user.password;
const passwordValid = await isPasswordValid(password, userHashPassword); const passwordValid = await isPasswordValid(password, userHashPassword);
if (!passwordValid) { if (!passwordValid) {

Loading…
Cancel
Save