在执行SSL终止的代理(例如NGINX或AWS ALB)之后使用spring web MVC,很容易配置tomcat以遵守X-Forwarded-Proto:https
标头。即在application.properties
的{{1}}中设置值,并且在进行身份验证或执行导致创建新Cookie的操作时,应用程序将设置Cookie的server.use-forward-headers=true
属性。
从MVC切换到Webflux似乎消除了这种行为。我注意到类secure
的代码检查:
exchange.getRequest()。getSslInfo())。map(sslInfo-> true).orElse(false)
代替了servlet tomcat机制来检查servlet请求中的org.springframework.security.web.server.csrf.CookieServerCsrfTokenRepository#saveToken
方法。
有没有办法使用webflux来获得这种行为?