โAuthorization
const checkForPermission = async (permissions, { dbInstance, externalUser }) => {
try {
const { id } = await dbInstance.select("Id").from("User").where("ExternalId", externalUser.id).first()
const rights = await dbInstance.select("Name as Right").from("UserRight")
.join('[Right]', { 'Right.Id': 'RightId' })
.where("UserRight.UserId", id)
return intersection(permissions, rights.map(x => x.right)).length > 0
}
catch (error) {
throw new ForbiddenError(`Authorization check failed! The following error was encountered: ${error}`)
}
}Last updated