This is an automated email from the ASF dual-hosted git repository.

ilgrosso pushed a commit to branch 4_0_X
in repository https://gitbox.apache.org/repos/asf/syncope.git


The following commit(s) were added to refs/heads/4_0_X by this push:
     new becf61b6b8 SRA: avoid relying on Spring Web's ForwardedHeaderUtils
becf61b6b8 is described below

commit becf61b6b80ee78db93c77557aac9f851fd28aa6
Author: Francesco Chicchiriccò <[email protected]>
AuthorDate: Tue Aug 11 12:57:55 2026 +0200

    SRA: avoid relying on Spring Web's ForwardedHeaderUtils
---
 client/idrepo/console/pom.xml                               |  5 -----
 .../java/org/apache/syncope/sra/security/cas/CASUtils.java  |  5 ++---
 .../sra/security/pac4j/ServerWebExchangeContext.java        | 13 ++++---------
 sra/src/main/resources/sra.properties                       |  1 +
 4 files changed, 7 insertions(+), 17 deletions(-)

diff --git a/client/idrepo/console/pom.xml b/client/idrepo/console/pom.xml
index eb365027ca..9045d43aa0 100644
--- a/client/idrepo/console/pom.xml
+++ b/client/idrepo/console/pom.xml
@@ -93,11 +93,6 @@ under the License.
       <artifactId>bcprov-jdk18on</artifactId>
     </dependency>
 
-    <dependency>
-      <groupId>com.nimbusds</groupId>
-      <artifactId>nimbus-jose-jwt</artifactId>
-    </dependency>
-
     <dependency>
       <groupId>org.webjars</groupId>
       <artifactId>font-awesome</artifactId>
diff --git 
a/sra/src/main/java/org/apache/syncope/sra/security/cas/CASUtils.java 
b/sra/src/main/java/org/apache/syncope/sra/security/cas/CASUtils.java
index 6f7eff47b8..054c69ad94 100644
--- a/sra/src/main/java/org/apache/syncope/sra/security/cas/CASUtils.java
+++ b/sra/src/main/java/org/apache/syncope/sra/security/cas/CASUtils.java
@@ -24,7 +24,7 @@ import org.slf4j.LoggerFactory;
 import org.springframework.http.HttpMethod;
 import 
org.springframework.security.web.server.util.matcher.ServerWebExchangeMatcher;
 import org.springframework.web.server.ServerWebExchange;
-import org.springframework.web.util.ForwardedHeaderUtils;
+import org.springframework.web.util.UriComponentsBuilder;
 import reactor.core.publisher.Mono;
 
 public final class CASUtils {
@@ -54,8 +54,7 @@ public final class CASUtils {
     }
 
     public static String constructServiceUrl(final ServerWebExchange exchange, 
final Protocol protocol) {
-        return ForwardedHeaderUtils.
-                adaptFromForwardedHeaders(exchange.getRequest().getURI(), 
exchange.getRequest().getHeaders()).
+        return UriComponentsBuilder.fromUri(exchange.getRequest().getURI()).
                 replaceQueryParam(protocol.getArtifactParameterName()).
                 build().
                 toUriString();
diff --git 
a/sra/src/main/java/org/apache/syncope/sra/security/pac4j/ServerWebExchangeContext.java
 
b/sra/src/main/java/org/apache/syncope/sra/security/pac4j/ServerWebExchangeContext.java
index 802263c3ff..90c1946262 100644
--- 
a/sra/src/main/java/org/apache/syncope/sra/security/pac4j/ServerWebExchangeContext.java
+++ 
b/sra/src/main/java/org/apache/syncope/sra/security/pac4j/ServerWebExchangeContext.java
@@ -32,7 +32,6 @@ import org.springframework.http.HttpHeaders;
 import org.springframework.http.ResponseCookie;
 import org.springframework.util.MultiValueMap;
 import org.springframework.web.server.ServerWebExchange;
-import org.springframework.web.util.ForwardedHeaderUtils;
 
 public class ServerWebExchangeContext implements WebContext {
 
@@ -144,20 +143,17 @@ public class ServerWebExchangeContext implements 
WebContext {
 
     @Override
     public String getServerName() {
-        return ForwardedHeaderUtils.adaptFromForwardedHeaders(
-                exchange.getRequest().getURI(), 
exchange.getRequest().getHeaders()).build().getHost();
+        return exchange.getRequest().getURI().getHost();
     }
 
     @Override
     public int getServerPort() {
-        return ForwardedHeaderUtils.adaptFromForwardedHeaders(
-                exchange.getRequest().getURI(), 
exchange.getRequest().getHeaders()).build().getPort();
+        return exchange.getRequest().getURI().getPort();
     }
 
     @Override
     public String getScheme() {
-        return ForwardedHeaderUtils.adaptFromForwardedHeaders(
-                exchange.getRequest().getURI(), 
exchange.getRequest().getHeaders()).build().getScheme();
+        return exchange.getRequest().getURI().getScheme();
     }
 
     @Override
@@ -167,8 +163,7 @@ public class ServerWebExchangeContext implements WebContext 
{
 
     @Override
     public String getFullRequestURL() {
-        return ForwardedHeaderUtils.adaptFromForwardedHeaders(
-                exchange.getRequest().getURI(), 
exchange.getRequest().getHeaders()).build().toUriString();
+        return exchange.getRequest().getURI().toString();
     }
 
     @Override
diff --git a/sra/src/main/resources/sra.properties 
b/sra/src/main/resources/sra.properties
index d391754eae..7b1208157d 100644
--- a/sra/src/main/resources/sra.properties
+++ b/sra/src/main/resources/sra.properties
@@ -19,6 +19,7 @@ spring.groovy.template.check-template-location=false
 spring.main.banner-mode=log
 
 server.port=8080
+server.forward-headers-strategy=NATIVE
 
 management.endpoint.gateway.access=UNRESTRICTED
 
management.endpoints.web.exposure.include=info,health,loggers,metrics,gateway,sraSessions

Reply via email to