From 40f8978bd6fe12c35ee25a817612848cb326bc96 Mon Sep 17 00:00:00 2001 From: TheLonelyKiwi Date: Fri, 19 Jun 2026 09:38:56 +0200 Subject: [PATCH] re-arranged filter order --- .../com/scrumdapp/gateway/configuration/GatewayConfig.kt | 4 +--- .../kotlin/com/scrumdapp/gateway/passports/PassportFilter.kt | 5 +++-- .../gateway/passports/PassportInvalidationFilter.kt | 4 +--- 3 files changed, 5 insertions(+), 8 deletions(-) diff --git a/src/main/kotlin/com/scrumdapp/gateway/configuration/GatewayConfig.kt b/src/main/kotlin/com/scrumdapp/gateway/configuration/GatewayConfig.kt index c241590..ca23798 100644 --- a/src/main/kotlin/com/scrumdapp/gateway/configuration/GatewayConfig.kt +++ b/src/main/kotlin/com/scrumdapp/gateway/configuration/GatewayConfig.kt @@ -36,6 +36,7 @@ class GatewayConfig { val routes: RouterFunction = route() + .filter(passportInvalidationFilter.invalidatePassport()) .filter(utilFilters.blockActuatorRequests()) .filter(passportFilters.insertPassport()) @@ -47,19 +48,16 @@ class GatewayConfig { ) .add(route("groups") .route(path("/api/groups/**"), http()) - .filter(passportInvalidationFilter.invalidatePassport()) .before(uri(services.getUrl("groups"))) .build() ) .add(route("users") .route(path("api/users/**"), http()) - .filter(passportInvalidationFilter.invalidatePassport()) .before(uri(services.getUrl("users"))) .build() ) .add(route("invites") .route(path("api/invites/**"), http()) - .filter(passportInvalidationFilter.invalidatePassport()) .before(uri(services.getUrl("invites"))) .build() ) diff --git a/src/main/kotlin/com/scrumdapp/gateway/passports/PassportFilter.kt b/src/main/kotlin/com/scrumdapp/gateway/passports/PassportFilter.kt index bc06be1..349b9e5 100644 --- a/src/main/kotlin/com/scrumdapp/gateway/passports/PassportFilter.kt +++ b/src/main/kotlin/com/scrumdapp/gateway/passports/PassportFilter.kt @@ -18,12 +18,13 @@ class PassportFilters( return HandlerFilterFunction { req: ServerRequest, next: HandlerFunction -> val session = req.session() ?: return@HandlerFilterFunction next.handle(req) - var cachedToken = session.getAttribute("JWT_AC_TOKEN") as? PassportToken + var cachedToken = session.getAttribute("PASSPORT") as? PassportToken + val userId = session.getAttribute("userId") as? Long ?: throw NotAuthorizedException(message = "Unauthorized, please log in again") if (cachedToken == null || cachedToken.isExpired()) { cachedToken = passportService.generatePassport(userId) - session.setAttribute("JWT_AC_TOKEN", cachedToken) + session.setAttribute("PASSPORT", cachedToken) } val mutatedReq = ServerRequest.from(req) diff --git a/src/main/kotlin/com/scrumdapp/gateway/passports/PassportInvalidationFilter.kt b/src/main/kotlin/com/scrumdapp/gateway/passports/PassportInvalidationFilter.kt index 8945714..a1fbbac 100644 --- a/src/main/kotlin/com/scrumdapp/gateway/passports/PassportInvalidationFilter.kt +++ b/src/main/kotlin/com/scrumdapp/gateway/passports/PassportInvalidationFilter.kt @@ -14,14 +14,12 @@ class PassportInvalidationFilter( fun invalidatePassport(): HandlerFilterFunction { return HandlerFilterFunction { req: ServerRequest, next: HandlerFunction -> - val res = next.handle(req) val session = req.session() ?: return@HandlerFilterFunction res if (passportRevokePaths.containsKey(req.path()) && passportRevokePaths[req.path()]?.contains(req.method()) == true) { - session.removeAttribute("JWT_AC_TOKEN") + session.removeAttribute("PASSPORT") } - res } }