spring boot配置https加密以及http升级2.0

https加密

在spring boot项目中配置微服务加密非常简单。

首先需要生成证书,如果是单项加密就只需要一个证书,如果是双向加密就需要至少两个证书。

数字证书的生成请看

tomcat实现https双向认证配置 生成证书后,将证书放到resources目录下

spring boot配置https加密以及http升级2.0_微服务安全加密


然后在application.properties或者application.yaml中配置证书

spring boot配置https加密以及http升级2.0_微服务安全加密_02


如果是单项认证,那么将​​client-auth​​设置成其他的,而​​trust​​开头的就不需要了。

如果单项认证,客户端什么都不需要做。

如果是双向认证,如果没有证书,就会提示

spring boot配置https加密以及http升级2.0_https加密配置_03


我们将客户端的JKS证书转为PKCS12证书,就可以安装客户端证书(服务端证书安装只需要安装cer文件即可,客户端证书安装需要安装p12文件)。其他的证书格式都可以,只要保证客户端证书安装后,带有私钥就行。

按下win+R,输入certmgr.msc,打开证书管理界面(在浏览器的设置->安全->证书管理也能打开)

spring boot配置https加密以及http升级2.0_https双向认证加密_04


安装完证书,刷新浏览器,此时浏览器就会弹框提示选择证书用于身份验证

spring boot配置https加密以及http升级2.0_https双向认证加密_05


我们点击确定,就能使用双向认证的方式访问了

spring boot配置https加密以及http升级2.0_微服务http1.1升级2.0_06

http升级2.0

如何查看自己现在使用的http版本呢?

我们首先使用浏览器的开发者工具(谷歌浏览器、edge是f12)

spring boot配置https加密以及http升级2.0_微服务安全加密_07


接着刷新界面,此时在开发者工具中会展示有请求发出

spring boot配置https加密以及http升级2.0_微服务安全加密_08


接着我们随机选择一个请求,右键

spring boot配置https加密以及http升级2.0_https加密配置_09


然后打开文本编辑器,粘贴,找到我们的请求

spring boot配置https加密以及http升级2.0_https双向认证加密_10


里面的httpVersion很清楚的标明了是HTTP1.1版本。

升级HTTP2.0也很容易

在微服务的application.properties和application.yaml中增加配置

spring boot配置https加密以及http升级2.0_https双向认证加密_11


然后重启微服务并访问,然后拷贝数据到文本编辑器中找到请求

spring boot配置https加密以及http升级2.0_https加密配置_12


这样就升级为了http2.0了