禁用HTTP for bluemix api调用

时间:2017-08-09 11:15:20

标签: http https ibm-cloud

我正在为REST API运行bluemix的spring-boot应用程序。 目前API调用正在http和https中工作。 如何禁用http?你觉得怎么样?

1 个答案:

答案 0 :(得分:0)

在spring-boot application.properties文件中添加以下两行

server.tomcat.internal-proxies=.*
server.use-forward-headers=true

添加以下spring配置bean

@Configuration
public class SecurityConfiguration {
    @Bean
    public EmbeddedServletContainerFactory tomcatEmbeddedServletContainerFactory() {

        TomcatEmbeddedServletContainerFactory tomcat = new TomcatEmbeddedServletContainerFactory() {
            @Override
            protected void postProcessContext(Context context) {
                SecurityConstraint securityConstraint = new SecurityConstraint();
                securityConstraint.setUserConstraint("CONFIDENTIAL");
                SecurityCollection collection = new SecurityCollection();
                collection.addPattern("/*");
                securityConstraint.addCollection(collection);
                context.addConstraint(securityConstraint);
            }
        };
        return tomcat;
    }
}

由于HTTPS已经在bluemix中实施,因此只需将http调用路由到https即可。但无论如何,我有兴趣知道是否有人知道要覆盖它并强制执行自己的安全证书?