diff --git a/server/src/contexts/auth/infrastructure/express/controllers/AuthenticateController.ts b/server/src/contexts/auth/infrastructure/express/controllers/AuthenticateController.ts index d9ea91e..c057f5d 100644 --- a/server/src/contexts/auth/infrastructure/express/controllers/AuthenticateController.ts +++ b/server/src/contexts/auth/infrastructure/express/controllers/AuthenticateController.ts @@ -25,7 +25,7 @@ export class AuthenticateController extends ExpressController { } // If the user is authenticated, attach the user object to the request and move on to the next middleware - this.req.user = user; + this.req["user"] = user; return this.next(); } ); diff --git a/server/src/contexts/auth/infrastructure/express/controllers/identity/Identity.controller.ts b/server/src/contexts/auth/infrastructure/express/controllers/identity/Identity.controller.ts index ae754fe..a154a50 100644 --- a/server/src/contexts/auth/infrastructure/express/controllers/identity/Identity.controller.ts +++ b/server/src/contexts/auth/infrastructure/express/controllers/identity/Identity.controller.ts @@ -25,7 +25,7 @@ export class IdentityController extends ExpressController { async executeImpl() { try { - const user = this.req.user; + const user = this.req?.user; if (!user) { const errorMessage = "Unexpected missing user data"; diff --git a/server/src/contexts/auth/infrastructure/express/controllers/login/Login.controller.ts b/server/src/contexts/auth/infrastructure/express/controllers/login/Login.controller.ts index 7b5ae7d..aefab0d 100644 --- a/server/src/contexts/auth/infrastructure/express/controllers/login/Login.controller.ts +++ b/server/src/contexts/auth/infrastructure/express/controllers/login/Login.controller.ts @@ -16,7 +16,7 @@ export class LoginController extends ExpressController { props: { presenter: ILoginPresenter; }, - context: IAuthContext, + context: IAuthContext ) { super(); @@ -27,13 +27,13 @@ export class LoginController extends ExpressController { async executeImpl() { try { - const user = this.req.user; + const user = this.req?.user; if (!user) { const errorMessage = "Unexpected missing user data"; const infraError = InfrastructureError.create( InfrastructureError.UNEXCEPTED_ERROR, - errorMessage, + errorMessage ); return this.internalServerError(errorMessage, infraError); } @@ -44,9 +44,7 @@ export class LoginController extends ExpressController { refreshToken: this._generateUserRefreshToken(user), }; - return this.ok( - this.presenter.map(loginUser, this.context), - ); + return this.ok(this.presenter.map(loginUser, this.context)); } catch (e: unknown) { return this.fail(e as IServerError); } @@ -59,10 +57,8 @@ export class LoginController extends ExpressController { } private _generateUserRefreshToken(user: AuthUser) { - return JWT.sign( - { email: user.email.toString() }, - config.jwt.refresh_secret_key, - { expiresIn: config.jwt.refresh_token_expiration }, - ); + return JWT.sign({ email: user.email.toString() }, config.jwt.refresh_secret_key, { + expiresIn: config.jwt.refresh_token_expiration, + }); } } diff --git a/server/src/contexts/auth/infrastructure/express/controllers/profileMiddleware.ts b/server/src/contexts/auth/infrastructure/express/controllers/profileMiddleware.ts index 0b70a9c..89a3196 100644 --- a/server/src/contexts/auth/infrastructure/express/controllers/profileMiddleware.ts +++ b/server/src/contexts/auth/infrastructure/express/controllers/profileMiddleware.ts @@ -8,9 +8,9 @@ const profileMiddleware = ( res: Express.Response, next: Express.NextFunction ) => { - const user = req.user; + const user = req?.user; - if (!user.isAdmin) { + if (!user || !user.isAdmin) { generateExpressError(req, res, httpStatus.UNAUTHORIZED); } next(); diff --git a/server/src/contexts/auth/infrastructure/express/passport/authMiddleware.ts b/server/src/contexts/auth/infrastructure/express/passport/authMiddleware.ts index 39de7c9..595b996 100644 --- a/server/src/contexts/auth/infrastructure/express/passport/authMiddleware.ts +++ b/server/src/contexts/auth/infrastructure/express/passport/authMiddleware.ts @@ -10,7 +10,7 @@ export const checkUser = composeMiddleware([ session: false, }), (req: Express.Request, res: Express.Response, next: Express.NextFunction) => { - const user = req.user; + //const user = req?.user; if (req.isAuthenticated()) { return next(); } @@ -22,8 +22,8 @@ export const checkUser = composeMiddleware([ export const checkisAdmin = composeMiddleware([ checkUser, (req: Express.Request, res: Express.Response, next: Express.NextFunction) => { - const user = req.user; - if (!user.isAdmin) { + const user = req?.user; + if (!user || !user.isAdmin) { generateExpressError(req, res, httpStatus.UNAUTHORIZED); } return next(); @@ -33,11 +33,11 @@ export const checkisAdmin = composeMiddleware([ export const checkAdminOrSelf = composeMiddleware([ checkUser, (req: Express.Request, res: Express.Response, next: Express.NextFunction) => { - const user = req.user; + const user = req?.user; const { userId } = req.params; - if (user.isAdmin) { + if (user && user.isAdmin) { return next(); } diff --git a/server/src/contexts/sales/infrastructure/express/middlewares/dealerMiddleware.ts b/server/src/contexts/sales/infrastructure/express/middlewares/dealerMiddleware.ts index 775a1c1..147ca22 100644 --- a/server/src/contexts/sales/infrastructure/express/middlewares/dealerMiddleware.ts +++ b/server/src/contexts/sales/infrastructure/express/middlewares/dealerMiddleware.ts @@ -9,7 +9,7 @@ export const getDealerMiddleware = async ( res: Express.Response, next: Express.NextFunction ) => { - const user = req.user; + const user = req?.user; const context: ISalesContext = res.locals.context; registerDealerRepository(context); diff --git a/server/src/infrastructure/express/api/routes/auth.routes.ts b/server/src/infrastructure/express/api/routes/auth.routes.ts index dce4eda..fa0c085 100644 --- a/server/src/infrastructure/express/api/routes/auth.routes.ts +++ b/server/src/infrastructure/express/api/routes/auth.routes.ts @@ -16,7 +16,7 @@ export const authRouter = (appRouter: Express.Router) => { ); authRoutes.post("/logout", checkUser, (req: Express.Request, res: Express.Response) => { - req.logout(function (err) { + req?.logout(function (err) { if (err) { return res.status(500).json(); }