From 51faf16c53cace0913660aaa669808a862b38ee0 Mon Sep 17 00:00:00 2001
From: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Date: Wed, 01 Oct 2025 08:52:59 +0000
Subject: [PATCH] Update to Keycloak 26.4.0
---
src/main/java/org/keycloak/protocol/cas/endpoints/ValidateEndpoint.java | 25 +++++++++++++------------
1 files changed, 13 insertions(+), 12 deletions(-)
diff --git a/src/main/java/org/keycloak/protocol/cas/endpoints/ValidateEndpoint.java b/src/main/java/org/keycloak/protocol/cas/endpoints/ValidateEndpoint.java
index 157142f..a3c14a4 100644
--- a/src/main/java/org/keycloak/protocol/cas/endpoints/ValidateEndpoint.java
+++ b/src/main/java/org/keycloak/protocol/cas/endpoints/ValidateEndpoint.java
@@ -1,24 +1,24 @@
package org.keycloak.protocol.cas.endpoints;
+import jakarta.ws.rs.GET;
+import jakarta.ws.rs.core.MediaType;
+import jakarta.ws.rs.core.MultivaluedMap;
+import jakarta.ws.rs.core.Response;
import org.jboss.resteasy.annotations.cache.NoCache;
import org.keycloak.events.EventBuilder;
import org.keycloak.events.EventType;
+import org.keycloak.models.KeycloakSession;
import org.keycloak.models.RealmModel;
import org.keycloak.protocol.cas.CASLoginProtocol;
import org.keycloak.protocol.cas.utils.CASValidationException;
-
-import javax.ws.rs.GET;
-import javax.ws.rs.core.MediaType;
-import javax.ws.rs.core.MultivaluedMap;
-import javax.ws.rs.core.Response;
public class ValidateEndpoint extends AbstractValidateEndpoint {
private static final String RESPONSE_OK = "yes\n";
private static final String RESPONSE_FAILED = "no\n";
- public ValidateEndpoint(RealmModel realm, EventBuilder event) {
- super(realm, event);
+ public ValidateEndpoint(KeycloakSession session, RealmModel realm, EventBuilder event) {
+ super(session, realm, event);
}
@GET
@@ -26,6 +26,7 @@
public Response build() {
MultivaluedMap<String, String> params = session.getContext().getUri().getQueryParameters();
String service = params.getFirst(CASLoginProtocol.SERVICE_PARAM);
+ String pgtUrl = params.getFirst(CASLoginProtocol.PGTURL_PARAM);
String ticket = params.getFirst(CASLoginProtocol.TICKET_PARAM);
boolean renew = params.containsKey(CASLoginProtocol.RENEW_PARAM);
@@ -36,7 +37,9 @@
checkRealm();
checkClient(service);
- checkTicket(ticket, renew);
+ checkTicket(ticket, CASLoginProtocol.SERVICE_TICKET_PREFIX, renew);
+
+ if (pgtUrl != null) createProxyGrant(pgtUrl);
event.success();
return successResponse();
@@ -46,10 +49,8 @@
}
protected Response successResponse() {
- StringBuilder sb = new StringBuilder(RESPONSE_OK);
- sb.append(clientSession.getUserSession().getUser().getUsername());
- sb.append("\n");
- return Response.ok(sb.toString()).type(MediaType.TEXT_PLAIN).build();
+ String response = RESPONSE_OK + clientSession.getUserSession().getUser().getUsername() + "\n";
+ return Response.ok(response).type(MediaType.TEXT_PLAIN).build();
}
protected Response errorResponse(CASValidationException e) {
--
Gitblit v1.9.1