diff --git a/autoconfigure/pom.xml b/autoconfigure/pom.xml
index b26ecda7..415dd81f 100644
--- a/autoconfigure/pom.xml
+++ b/autoconfigure/pom.xml
@@ -10,7 +10,7 @@
se.swedenconnect.spring.saml.idp
spring-saml-idp-parent
- 2.3.1
+ 2.3.2-SNAPSHOT
Sweden Connect :: Spring SAML Identity Provider :: Spring Boot Autoconfigure module
@@ -106,7 +106,7 @@
org.redisson
redisson-spring-boot-starter
- 3.40.1
+ 3.42.0
true
diff --git a/autoconfigure/src/main/java/se/swedenconnect/spring/saml/idp/autoconfigure/redis/RedissonActivationAutoConfiguration.java b/autoconfigure/src/main/java/se/swedenconnect/spring/saml/idp/autoconfigure/redis/RedissonActivationAutoConfiguration.java
new file mode 100644
index 00000000..099fe954
--- /dev/null
+++ b/autoconfigure/src/main/java/se/swedenconnect/spring/saml/idp/autoconfigure/redis/RedissonActivationAutoConfiguration.java
@@ -0,0 +1,41 @@
+/*
+ * Copyright 2023-2025 Sweden Connect
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package se.swedenconnect.spring.saml.idp.autoconfigure.redis;
+
+import org.redisson.Redisson;
+import org.redisson.spring.starter.RedissonAutoConfigurationV2;
+import org.redisson.spring.starter.RedissonProperties;
+import org.springframework.boot.autoconfigure.AutoConfiguration;
+import org.springframework.boot.autoconfigure.AutoConfigureBefore;
+import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
+import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
+import org.springframework.boot.autoconfigure.data.redis.RedisAutoConfiguration;
+import org.springframework.boot.autoconfigure.data.redis.RedisProperties;
+import org.springframework.boot.context.properties.EnableConfigurationProperties;
+import org.springframework.data.redis.core.RedisOperations;
+
+/**
+ * Activates Redisson if Redis is configured and Redisson is in classpath.
+ *
+ * @author Martin Lindström
+ */
+@AutoConfiguration
+@AutoConfigureBefore(RedisAutoConfiguration.class)
+@ConditionalOnProperty(prefix = "spring.data.redis", name = "host")
+@ConditionalOnClass({ Redisson.class, RedisOperations.class, RedissonAutoConfigurationV2.class })
+@EnableConfigurationProperties({ RedissonProperties.class, RedisProperties.class })
+public class RedissonActivationAutoConfiguration extends RedissonAutoConfigurationV2 {
+}
diff --git a/autoconfigure/src/main/java/se/swedenconnect/spring/saml/idp/autoconfigure/redis/RedissonExtensionsAutoConfiguration.java b/autoconfigure/src/main/java/se/swedenconnect/spring/saml/idp/autoconfigure/redis/RedissonExtensionsAutoConfiguration.java
index 7d64c4f0..8273f733 100644
--- a/autoconfigure/src/main/java/se/swedenconnect/spring/saml/idp/autoconfigure/redis/RedissonExtensionsAutoConfiguration.java
+++ b/autoconfigure/src/main/java/se/swedenconnect/spring/saml/idp/autoconfigure/redis/RedissonExtensionsAutoConfiguration.java
@@ -20,6 +20,7 @@
import org.redisson.config.ClusterServersConfig;
import org.redisson.config.Config;
import org.redisson.config.ReadMode;
+import org.redisson.config.SslVerificationMode;
import org.redisson.spring.starter.RedissonAutoConfigurationCustomizer;
import org.redisson.spring.starter.RedissonAutoConfigurationV2;
import org.springframework.boot.autoconfigure.AutoConfiguration;
@@ -41,7 +42,7 @@
*
* @author Martin Lindström
*/
-@AutoConfiguration(before = RedissonAutoConfigurationV2.class)
+@AutoConfiguration(before = RedissonActivationAutoConfiguration.class)
@ConditionalOnClass(RedissonAutoConfigurationV2.class)
@EnableConfigurationProperties({ RedisProperties.class, RedissonClusterProperties.class, RedisTlsProperties.class })
@Import(RedisTlsExtensionsConfiguration.class)
@@ -88,7 +89,8 @@ RedissonAutoConfigurationCustomizer redissonCustomizer() {
return c -> {
final BaseConfig> config = this.getRedissonConfiguration(c);
if (this.redisProperties.getSsl().isEnabled()) {
- config.setSslEnableEndpointIdentification(this.redisTlsProperties.isEnableHostnameVerification());
+ config.setSslVerificationMode(this.redisTlsProperties.isEnableHostnameVerification()
+ ? SslVerificationMode.STRICT : SslVerificationMode.NONE);
final String bundle = this.redisProperties.getSsl().getBundle();
if (bundle != null) {
final SslBundle sslBundle = this.sslBundles.getBundle(bundle);
diff --git a/autoconfigure/src/main/java/se/swedenconnect/spring/saml/idp/autoconfigure/redis/RedissonFilter.java b/autoconfigure/src/main/java/se/swedenconnect/spring/saml/idp/autoconfigure/redis/RedissonFilter.java
new file mode 100644
index 00000000..b76e4af4
--- /dev/null
+++ b/autoconfigure/src/main/java/se/swedenconnect/spring/saml/idp/autoconfigure/redis/RedissonFilter.java
@@ -0,0 +1,45 @@
+/*
+ * Copyright 2023-2025 Sweden Connect
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package se.swedenconnect.spring.saml.idp.autoconfigure.redis;
+
+import org.redisson.spring.starter.RedissonAutoConfigurationV2;
+import org.springframework.boot.autoconfigure.AutoConfigurationImportFilter;
+import org.springframework.boot.autoconfigure.AutoConfigurationMetadata;
+
+import java.util.Objects;
+
+/**
+ * Disables Redisson autoconfiguration.
+ *
+ * @author Martin Lindström
+ */
+public class RedissonFilter implements AutoConfigurationImportFilter {
+
+ public static final String DISABLE = RedissonAutoConfigurationV2.class.getName();
+
+ @Override
+ public boolean[] match(final String[] autoConfigurationClasses,
+ final AutoConfigurationMetadata autoConfigurationMetadata) {
+
+ final boolean[] matches = new boolean[autoConfigurationClasses.length];
+ for (int i = 0; i < autoConfigurationClasses.length; i++) {
+ matches[i] = !Objects.equals(DISABLE, autoConfigurationClasses[i]);
+ }
+
+ return matches;
+ }
+
+}
diff --git a/autoconfigure/src/main/resources/META-INF/spring.factories b/autoconfigure/src/main/resources/META-INF/spring.factories
new file mode 100644
index 00000000..f5d0c9b6
--- /dev/null
+++ b/autoconfigure/src/main/resources/META-INF/spring.factories
@@ -0,0 +1 @@
+org.springframework.boot.autoconfigure.AutoConfigurationImportFilter=se.swedenconnect.spring.saml.idp.autoconfigure.redis.RedissonFilter
diff --git a/autoconfigure/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports b/autoconfigure/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
index 3e7c80fe..032b41c8 100644
--- a/autoconfigure/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
+++ b/autoconfigure/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
@@ -8,6 +8,7 @@ se.swedenconnect.spring.saml.idp.autoconfigure.settings.MessageReplayCheckerAuto
se.swedenconnect.spring.saml.idp.autoconfigure.web.security.IdentityProviderSecurityFilterChainAutoConfiguration
se.swedenconnect.spring.saml.idp.autoconfigure.error.Saml2IdpErrorAutoConfiguration
se.swedenconnect.spring.saml.idp.autoconfigure.redis.RedissonExtensionsAutoConfiguration
+se.swedenconnect.spring.saml.idp.autoconfigure.redis.RedissonActivationAutoConfiguration
se.swedenconnect.spring.saml.idp.autoconfigure.redis.RedisExtensionsAutoConfiguration
se.swedenconnect.spring.saml.idp.autoconfigure.session.RedisSessionAutoConfiguration
-se.swedenconnect.spring.saml.idp.autoconfigure.session.MemorySessionAutoConfiguration
\ No newline at end of file
+se.swedenconnect.spring.saml.idp.autoconfigure.session.MemorySessionAutoConfiguration
diff --git a/pom.xml b/pom.xml
index 94503b40..90f0f160 100644
--- a/pom.xml
+++ b/pom.xml
@@ -6,7 +6,7 @@
se.swedenconnect.spring.saml.idp
spring-saml-idp-parent
pom
- 2.3.1
+ 2.3.2-SNAPSHOT
Sweden Connect :: Spring SAML Identity Provider :: Parent POM
Parent POM for Spring SAML Identity Provider libraries
@@ -44,8 +44,8 @@
UTF-8
17
- 3.4.0
- 6.2.0
+ 3.4.1
+ 6.2.1
1.79
2.0.1
1.18.36
diff --git a/saml-identity-provider/pom.xml b/saml-identity-provider/pom.xml
index 642f29d6..4415594d 100644
--- a/saml-identity-provider/pom.xml
+++ b/saml-identity-provider/pom.xml
@@ -9,7 +9,7 @@
se.swedenconnect.spring.saml.idp
spring-saml-idp-parent
- 2.3.1
+ 2.3.2-SNAPSHOT
Sweden Connect :: Spring SAML Identity Provider :: Core Library
@@ -147,7 +147,7 @@
org.redisson
redisson
- 3.39.0
+ 3.42.0
true
@@ -155,7 +155,7 @@
ch.qos.logback
logback-classic
- 1.5.12
+ 1.5.16
test
diff --git a/saml-identity-provider/src/main/java/se/swedenconnect/spring/saml/idp/Saml2IdentityProviderVersion.java b/saml-identity-provider/src/main/java/se/swedenconnect/spring/saml/idp/Saml2IdentityProviderVersion.java
index f0a0aae9..601f96dc 100644
--- a/saml-identity-provider/src/main/java/se/swedenconnect/spring/saml/idp/Saml2IdentityProviderVersion.java
+++ b/saml-identity-provider/src/main/java/se/swedenconnect/spring/saml/idp/Saml2IdentityProviderVersion.java
@@ -24,7 +24,7 @@ public final class Saml2IdentityProviderVersion {
private static final int MAJOR = 2;
private static final int MINOR = 3;
- private static final int PATCH = 1;
+ private static final int PATCH = 2;
/**
* Global serialization value for SAML Identity Provider classes.
diff --git a/samples/client/pom.xml b/samples/client/pom.xml
index fdb79f1c..69c47987 100644
--- a/samples/client/pom.xml
+++ b/samples/client/pom.xml
@@ -9,7 +9,7 @@
se.swedenconnect.spring.saml.idp
spring-saml-idp-samples-parent
- 2.3.1
+ 2.3.2-SNAPSHOT
Sweden Connect :: Spring SAML Identity Provider :: Samples :: Client Application
diff --git a/samples/demo-boot-idp/pom.xml b/samples/demo-boot-idp/pom.xml
index 88d76e54..78dfbec0 100644
--- a/samples/demo-boot-idp/pom.xml
+++ b/samples/demo-boot-idp/pom.xml
@@ -9,7 +9,7 @@
se.swedenconnect.spring.saml.idp
spring-saml-idp-samples-parent
- 2.3.1
+ 2.3.2-SNAPSHOT
Sweden Connect :: Spring SAML Identity Provider :: Samples :: Spring Boot Starter Demo Application
@@ -80,10 +80,18 @@
true
+
+
+
+ org.redisson
+ redisson-spring-boot-starter
+ 3.42.0
+
org.springframework.session
diff --git a/samples/demo-boot-idp/src/main/resources/application.yml b/samples/demo-boot-idp/src/main/resources/application.yml
index a2aeb874..1453cf8d 100644
--- a/samples/demo-boot-idp/src/main/resources/application.yml
+++ b/samples/demo-boot-idp/src/main/resources/application.yml
@@ -12,6 +12,7 @@ server:
include-exception: true
include-stacktrace: always
+
management:
server:
port: 8444
diff --git a/samples/pom.xml b/samples/pom.xml
index fdf3c0f2..02fb4616 100644
--- a/samples/pom.xml
+++ b/samples/pom.xml
@@ -9,7 +9,7 @@
se.swedenconnect.spring.saml.idp
spring-saml-idp-parent
- 2.3.1
+ 2.3.2-SNAPSHOT
Sweden Connect :: Spring SAML Identity Provider :: Samples :: Parent POM
diff --git a/starter/pom.xml b/starter/pom.xml
index f5a836dd..3f41ddd8 100644
--- a/starter/pom.xml
+++ b/starter/pom.xml
@@ -10,7 +10,7 @@
se.swedenconnect.spring.saml.idp
spring-saml-idp-parent
- 2.3.1
+ 2.3.2-SNAPSHOT
Sweden Connect :: Spring SAML Identity Provider :: Spring Boot Starter