From 74f9bff6d026515e446d34f007fee35c3eee7794 Mon Sep 17 00:00:00 2001 From: vld <valentin.lorand@kereval.com> Date: Wed, 26 Apr 2023 14:13:37 +0000 Subject: [PATCH] Redirect user for logout if no active session --- src/main/java/org/keycloak/protocol/cas/endpoints/LogoutEndpoint.java | 7 +++++++ 1 files changed, 7 insertions(+), 0 deletions(-) diff --git a/src/main/java/org/keycloak/protocol/cas/endpoints/LogoutEndpoint.java b/src/main/java/org/keycloak/protocol/cas/endpoints/LogoutEndpoint.java index ac7d74c..bf65e22 100644 --- a/src/main/java/org/keycloak/protocol/cas/endpoints/LogoutEndpoint.java +++ b/src/main/java/org/keycloak/protocol/cas/endpoints/LogoutEndpoint.java @@ -23,6 +23,7 @@ import javax.ws.rs.core.Context; import javax.ws.rs.core.HttpHeaders; import javax.ws.rs.core.Response; +import java.net.URI; public class LogoutEndpoint { private static final Logger logger = Logger.getLogger(LogoutEndpoint.class); @@ -66,6 +67,12 @@ logger.debug("finishing CAS browser logout"); return response; } + + if (redirectUri != null) { + logger.debugv("no active session, redirecting to {0}", redirectUri); + return Response.status(302).location(URI.create(redirectUri)).build(); + } + return ErrorPage.error(session, null, Response.Status.BAD_REQUEST, Messages.FAILED_LOGOUT); } -- Gitblit v1.9.1