SpringBoot配置支持https

spring boot因为是使用内置的tomcat,所以只需要一些简单的配置即可。

1.首先打开命令行工具,比如cmd,输入以下命令

keytool -genkey -alias tomcat -storetype PKCS12 -keyalg RSA -keysize 2048 -keystore keystore.p12 -validity 3650

2.然后在你的根目录下面会看到一个.p12的文件,如下图所示:

3.将它移到你的spring boot项目中的resources目录下

4.最后在application.properties中添加以下配置:

server.port=8888

server.ssl.key-store=classpath:keystore.p12

server.ssl.key-store-password=123456(此处密码为第一步中创建.p12文件时你输入的口令)

server.ssl.keyStoreType=PKCS12

server.ssl.keyAlias=tomcat

5.最后启动你的spring boot项目即可用https的方式访问你的接口了。

用户访问http自动跳转到https,支持post方法

importorg.apache.catalina.Context;importorg.apache.catalina.connector.Connector;importorg.apache.tomcat.util.descriptor.web.SecurityCollection;importorg.apache.tomcat.util.descriptor.web.SecurityConstraint;importorg.springframework.beans.factory.annotation.Value;importorg.springframework.boot.web.embedded.tomcat.TomcatServletWebServerFactory;importorg.springframework.context.annotation.Bean;importorg.springframework.context.annotation.Configuration;

@Configurationpublic classHttpConnectorConfig {//在某配置类中添加如下内容//监听的http请求的端口,需要在application配置中添加http.port=端口号 如80

@Value("${http.port}")

Integer httpPort;//正常启用的https端口 如443

@Value("${server.port}")

Integer httpsPort;//springboot2 写法

@BeanpublicTomcatServletWebServerFactory servletContainer() {

TomcatServletWebServerFactory tomcat= newTomcatServletWebServerFactory() {

@Overrideprotected voidpostProcessContext(Context context) {

SecurityConstraint constraint= newSecurityConstraint();

constraint.setUserConstraint("CONFIDENTIAL");

SecurityCollection collection= newSecurityCollection();

collection.addMethod("post"); //添加post方法

collection.addPattern("/*");

constraint.addCollection(collection);

context.addConstraint(constraint);

}

};

tomcat.addAdditionalTomcatConnectors(httpConnector());returntomcat;

}

@BeanpublicConnector httpConnector() {

Connector connector= new Connector("org.apache.coyote.http11.Http11NioProtocol");

connector.setScheme("http");//Connector监听的http的端口号

connector.setPort(httpPort);

connector.setSecure(false);//监听到http的端口号后转向到的https的端口号

connector.setRedirectPort(httpsPort);returnconnector;

}

}

---------------------

作者:颜艺学长

来源:CSDN

原文:https://blog.csdn.net/hwangfantasy/article/details/78403570

版权声明:本文为博主原创文章,转载请附上博文链接!

springmvc配置ssl_Spring Mvc和Spring Boot配置Tomcat支持Https相关推荐

  1. Spring boot应用如何支持https

    首先使用命令行生成一个keystore文件: keytool -genkey -alias tomcat -keyalg RSA -keystore ./jerry.keystore 保存到本地项目文 ...

  2. Spring Boot配置跨域访问策略

    From: https://blog.csdn.net/garyond/article/details/80192760 1. 引言 我们在开发过程中通常因为不同应用之间的接口调用或者应用之间接口集成 ...

  3. Spring Boot配置log4j记录日志

    转载请注明出处:Spring Boot配置log4j记录日志 我们在老的项目框架ssh,springMVC中都使用过log4j日志模块. 例如:java日志功能log4j模块的使用方法 Spring ...

  4. Spring Boot 2.0 配置图文教程第 2 章 Spring Boot 配置## 书信息 demo.book.name=[Spring Boot 2.x Core Action] demo.b

    本章内容 1.自定义属性快速入门 2.外化配置 3.自动配置 4.自定义创建 Starter 组件 摘录:读书是读完这些文字还要好好用心去想想,写书也一样,做任何事也一样 第 2 章 Spring B ...

  5. spring boot配置详情

    spring boot配置详情如下:  1.MVC相关  mvc  spring.mvc.async.request-timeout设定async请求的超时时间,以毫秒为单位,如果没有设置的话,以具体 ...

  6. Spring Boot 配置中的敏感信息如何保护?

    在之前的系列教程中,我们已经介绍了非常多关于Spring Boot配置文件中的各种细节用法,比如:参数间的引用.随机数的应用.命令行参数的使用.多环境的配置管理等等. 这些配置相关的知识都是Sprin ...

  7. Spring Boot 配置元数据指南

    点击蓝色"程序猿DD"关注我 回复"资源"获取独家整理的学习资料! 作者 | 遗失的拂晓 来源 | 公众号「锅外的大佬」 1. 概览 在编写 Spring Bo ...

  8. Spring Boot 配置加载顺序详解

    使用 Spring Boot 会涉及到各种各样的配置,如开发.测试.线上就至少 3 套配置信息了.Spring Boot 可以轻松的帮助我们使用相同的代码就能使开发.测试.线上环境使用不同的配置. 在 ...

  9. springboot 获取application参数_(最新 9000 字 )Spring Boot 配置特性解析

    一.概述 目前Spring Boot版本: 2.3.4.RELEASE,这更新的速度也是嗖嗖的了,随着新版本的发布,也一步步针对公司基础组件进行了升级改造,其中很重要的一块就是配置文件的更新(虽然目前 ...

最新文章

  1. 如何为WCF应用添加X509证书和安全验证
  2. JavaScript中的私有成员
  3. 一个悄然成为世界最流行的操作系统诞生!
  4. Android中使用HttpClient实现HTTP通信效果
  5. 【二分】买礼物的艰辛
  6. 回环设备(loop-back devices)
  7. maven netty 配置_使用Springboot整合开发Netty(一个表白的小案例)
  8. 【蓝鸥Unity开发基础三】课时3 Terrain地形系统【未完】
  9. 存储过程系列之存储过程返回值总结
  10. 计蒜客---N的-2进制表示
  11. 陈纪修老师《数学分析》 第01章:集合与映射 笔记
  12. npoi导出的excel中设置列宽
  13. BZOJ 2101: [Usaco2010 Dec]Treasure Chest 藏宝箱(这是我写过最骚气的dp!)
  14. Cloud 80% 客制化键盘分享,模块拼色设计
  15. 《线性代数应该这样学》读书笔记
  16. 一文了解Jeff Bezos,电商与公有云的“世界首富”
  17. 如何从零设计一种物联网组网协议
  18. C++入坑系列(五)之函数指针
  19. 【Open Judge】7624 山区建小学
  20. OD图 arcgis曲线制作插件 od图曲线 路径图曲线制作插件 航线图曲线制作插件

热门文章

  1. B站后台源代码泄露,官方回应声明黑话指南
  2. 互联网基础结构发展的三个阶段
  3. javaWeb登录验证码第一次验证失败,刷新验证码后验证成功问题
  4. jqGrid学习笔记
  5. 51单片机两只老虎 c语言,基于51单片机做音乐盒(两只老虎)
  6. direct3d D3DXCreateTextureFromResource 加载png
  7. Apple苹果产品MFi设计及标准汇总
  8. cloudera manager 安装界面指定主机无法选中解决方案
  9. 面试必问问题最佳答案
  10. 分数的计算机题,分数问题