From 7d7781d79565968eac4ab21db453ae9f11cf42b8 Mon Sep 17 00:00:00 2001 From: Tom Moor Date: Mon, 1 May 2023 20:23:35 -0400 Subject: [PATCH] Add additional debug logging to no user OIDC case Related #5241 --- server/middlewares/passport.ts | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/server/middlewares/passport.ts b/server/middlewares/passport.ts index 6e94e255e..aa5e663a6 100644 --- a/server/middlewares/passport.ts +++ b/server/middlewares/passport.ts @@ -1,6 +1,7 @@ import passport from "@outlinewiki/koa-passport"; import { Context } from "koa"; import env from "@server/env"; +import { AuthenticationError } from "@server/errors"; import Logger from "@server/logging/Logger"; import { AuthenticationResult } from "@server/types"; import { signIn } from "@server/utils/authentication"; @@ -55,7 +56,11 @@ export default function createMiddleware(providerName: string) { // the event that error=access_denied is received from the OAuth server. // I'm not sure why this exception to the rule exists, but it does: // https://github.com/jaredhanson/passport-oauth2/blob/e20f26aad60ed54f0e7952928cbb64979ef8da2b/lib/strategy.js#L135 - if (!user) { + if (!user && !result?.user) { + Logger.error( + "No user returned during authentication", + AuthenticationError() + ); return ctx.redirect(`/?notice=auth-error`); }