zoukankan      html  css  js  c++  java
  • spring boot接口 支持https

    1.拥有证书,可自己生成测试用javatool生成

    keytool -keystore [keyname].jks -genkey -alias tomcat -keyalg RSA

    接下来输入相关信息即可

    2.把证书添加到项目中/src/main/resources/目录下

    3.增加配置

    server.port= 8443
    server.ssl.key-store= classpath:mykeys.jks
    server.ssl.key-store-password= yourpassword
    server.ssl.key-password= yourpassword
    

    4.配置用户访问http自动跳转到https(http与https均可访问)

    @Configuration
    public class HttpsConfiguration {
    
        @Bean
        public EmbeddedServletContainerFactory servletContainer() {
            TomcatEmbeddedServletContainerFactory tomcat = new TomcatEmbeddedServletContainerFactory() {
                protected void postProcessContext(Context context) {
                    SecurityConstraint securityConstraint = new SecurityConstraint();
                    securityConstraint.setUserConstraint("CONFIDENTIAL");
                    SecurityCollection collection = new SecurityCollection();
                    collection.addPattern("/*");
                    securityConstraint.addCollection(collection);
                    context.addConstraint(securityConstraint);
                }
            };
            tomcat.addAdditionalTomcatConnectors(httpConnector());
            return tomcat;
        }
    
        @Bean
        public Connector httpConnector() {
            Connector connector = new Connector("org.apache.coyote.http11.Http11NioProtocol");
            connector.setScheme("http");
            connector.setPort(8080);// 表示用8080端口来供http访问
            connector.setSecure(false);
            connector.setRedirectPort(8443);// 自动重定向到8443端口
            return connector;
        }
    }
    欢迎指正,交流沟通,共同进步!对您有帮助的话点下推荐~~
  • 相关阅读:
    抬起头,看到满天星星
    别再嫌弃你妈妈话多唠叨啦,她可能正在做声音健脑操呢
    此生不能不認識的一個人
    长尾夹除了夹东西还能做什么?
    Markdown使用经验总结
    注册quora失败
    电脑插入耳机后声音仍然外放
    centOS下安装tree命令
    解决ubuntu “无法获得锁"
    虚拟机上Ubuntu无法上网问题
  • 原文地址:https://www.cnblogs.com/gaoyawei/p/7306574.html
Copyright © 2011-2022 走看看