From 8d8a63c364818b969f90badeb271df3988e8ff56 Mon Sep 17 00:00:00 2001 From: github-actions <41898282+github-actions[bot]@users.noreply.github.com> Date: Thu, 27 Apr 2023 08:47:17 +0000 Subject: [PATCH] Update to Keycloak 21.1.1 --- src/main/java/org/keycloak/protocol/cas/CASLoginProtocol.java | 24 ++++++++++++++++-------- 1 files changed, 16 insertions(+), 8 deletions(-) diff --git a/src/main/java/org/keycloak/protocol/cas/CASLoginProtocol.java b/src/main/java/org/keycloak/protocol/cas/CASLoginProtocol.java index 7eb67fc..0317f0d 100644 --- a/src/main/java/org/keycloak/protocol/cas/CASLoginProtocol.java +++ b/src/main/java/org/keycloak/protocol/cas/CASLoginProtocol.java @@ -4,6 +4,7 @@ import org.jboss.logging.Logger; import org.keycloak.common.util.KeycloakUriBuilder; import org.keycloak.common.util.Time; +import org.keycloak.events.Details; import org.keycloak.events.EventBuilder; import org.keycloak.events.EventType; import org.keycloak.forms.login.LoginFormsProvider; @@ -99,7 +100,8 @@ OAuth2Code codeData = new OAuth2Code(UUID.randomUUID().toString(), Time.currentTime() + userSession.getRealm().getAccessCodeLifespan(), - null, null, authSession.getRedirectUri(), null, null); + null, null, authSession.getRedirectUri(), null, null, + userSession.getId()); String code = OAuth2CodeParser.persistCode(session, clientSession, codeData); KeycloakUriBuilder uriBuilder = KeycloakUriBuilder.fromUri(service); @@ -143,8 +145,8 @@ } private void sendSingleLogoutRequest(String logoutUrl, String serviceTicket) { - HttpEntity requestEntity = LogoutHelper.buildSingleLogoutRequest(serviceTicket); try { + HttpEntity requestEntity = LogoutHelper.buildSingleLogoutRequest(serviceTicket); LogoutHelper.postWithRedirect(session, logoutUrl, requestEntity); logger.debug("Sent CAS single logout for service " + logoutUrl); } catch (IOException e) { @@ -162,16 +164,22 @@ public Response finishBrowserLogout(UserSessionModel userSession, AuthenticationSessionModel logoutSession) { String redirectUri = userSession.getNote(CASLoginProtocol.LOGOUT_REDIRECT_URI); - event.event(EventType.LOGOUT); - event.user(userSession.getUser()).session(userSession).success(); + event.event(EventType.LOGOUT) + .user(userSession.getUser()) + .session(userSession) + .detail(Details.USERNAME, userSession.getUser().getUsername()); if (redirectUri != null) { + event.detail(Details.REDIRECT_URI, redirectUri); + event.success(); return Response.status(302).location(URI.create(redirectUri)).build(); - } else { - LoginFormsProvider infoPage = session.getProvider(LoginFormsProvider.class).setSuccess("Logout successful"); - infoPage.setAttribute("skipLink", true); - return infoPage.createInfoPage(); } + + event.success(); + + LoginFormsProvider infoPage = session.getProvider(LoginFormsProvider.class).setSuccess("Logout successful"); + infoPage.setAttribute("skipLink", true); + return infoPage.createInfoPage(); } @Override -- Gitblit v1.9.1