我正在使用弹簧靴(1.2.3)并嵌入undertow。出于安全原因,我更愿意将任何 http 请求重定向到 https,但我找不到这样做的示例。
这是 Spring Boot 和 tomcat 的示例: Spring boot - Embeded Tomcat HTTP to HTTPS redirect
有没有人有解决方案来解决这个问题?
我正在使用弹簧靴(1.2.3)并嵌入undertow。出于安全原因,我更愿意将任何 http 请求重定向到 https,但我找不到这样做的示例。
这是 Spring Boot 和 tomcat 的示例: Spring boot - Embeded Tomcat HTTP to HTTPS redirect
有没有人有解决方案来解决这个问题?
您可以将 Spring-Security 添加到您的项目中,然后配置 Spring-Security 以强制执行 https。您可以在 JavaDoc 中找到一个小示例
org.springframework.security.config.annotation.web.builders.HttpSecurity#requiresChannel()
实际上,您将在 Spring Boot 应用程序中有 2 个端口,因此您必须创建另一个 EmbeddedServletContainerFactory,告诉新端口 http 或 https。创建新端口后,您可以使用 Spring Mvc 或 Spring Security 管理重定向。
恕我直言,这是一个反向代理的问题,它在处理您的应用程序之前的 http 流量。这对你来说是一个选择吗?