diff --git a/spring-boot-project/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/thymeleaf/ThymeleafAutoConfiguration.java b/spring-boot-project/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/thymeleaf/ThymeleafAutoConfiguration.java index cbe75645ad..9e3ad8f610 100644 --- a/spring-boot-project/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/thymeleaf/ThymeleafAutoConfiguration.java +++ b/spring-boot-project/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/thymeleaf/ThymeleafAutoConfiguration.java @@ -58,6 +58,9 @@ import org.springframework.context.ApplicationContext; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.core.Ordered; +import org.springframework.security.core.context.ReactiveSecurityContextHolder; +import org.springframework.security.web.reactive.result.view.CsrfRequestDataValueProcessor; +import org.springframework.security.web.server.csrf.CsrfToken; import org.springframework.util.MimeType; import org.springframework.util.unit.DataSize; import org.springframework.web.servlet.resource.ResourceUrlEncodingFilter; @@ -279,7 +282,8 @@ public class ThymeleafAutoConfiguration { } @Configuration(proxyBeanMethods = false) - @ConditionalOnClass({ SpringSecurityDialect.class }) + @ConditionalOnClass({ SpringSecurityDialect.class, ReactiveSecurityContextHolder.class, + CsrfRequestDataValueProcessor.class, CsrfToken.class }) static class ThymeleafSecurityDialectConfiguration { @Bean