compare with jwt assigne drole on verifyLogin instead of database query again

This commit is contained in:
Ulf Gebhardt 2021-11-25 09:57:27 +01:00
parent ffc45d5cde
commit fddc39efe5
Signed by: ulfgebhardt
GPG Key ID: DA6B843E748679C9

View File

@ -32,6 +32,7 @@ import { sendEMail } from '../../util/sendEMail'
import { LoginElopageBuysRepository } from '../../typeorm/repository/LoginElopageBuys' import { LoginElopageBuysRepository } from '../../typeorm/repository/LoginElopageBuys'
import { RIGHTS } from '../../auth/RIGHTS' import { RIGHTS } from '../../auth/RIGHTS'
import { ServerUserRepository } from '../../typeorm/repository/ServerUser' import { ServerUserRepository } from '../../typeorm/repository/ServerUser'
import { ROLE_ADMIN } from '../../auth/ROLES'
// eslint-disable-next-line @typescript-eslint/no-var-requires // eslint-disable-next-line @typescript-eslint/no-var-requires
const sodium = require('sodium-native') const sodium = require('sodium-native')
@ -226,9 +227,7 @@ export class UserResolver {
}) })
user.coinanimation = coinanimation user.coinanimation = coinanimation
const serverUserRepository = await getCustomRepository(ServerUserRepository) user.isAdmin = context.role === ROLE_ADMIN
const countServerUsers = await serverUserRepository.count({ email: user.email })
user.isAdmin = countServerUsers > 0
return user return user
} }
@ -306,6 +305,7 @@ export class UserResolver {
}) })
user.coinanimation = coinanimation user.coinanimation = coinanimation
// context.role is not set to the actual role yet on login
const serverUserRepository = await getCustomRepository(ServerUserRepository) const serverUserRepository = await getCustomRepository(ServerUserRepository)
const countServerUsers = await serverUserRepository.count({ email: user.email }) const countServerUsers = await serverUserRepository.count({ email: user.email })
user.isAdmin = countServerUsers > 0 user.isAdmin = countServerUsers > 0