Springboot配置https访问
介绍
该篇博文主要介绍如何配置Springboot使其打包部署的服务必须通过HTTPS协议才可访问,仅供内部研究使用。
生成https证书
要使用https,首先需要ssl证书,获取SSL证书有两种方式:
- 自己通过keytool生成
- 通过证书授权机构购买
这里本地测试使用,通过keytool生成,方式如下
C:\Users\feifuzeng>keytool -genkey -alias tomcat -storetype PKCS12 -keyalg RSA -ke
ysize 2048 -keystore keystore.p12 -validity 3650
输入密钥库口令:
密钥库口令太短 - 至少必须为 6 个字符
输入密钥库口令:
再次输入新口令:
您的名字与姓氏是什么?
[Unknown]: fei
您的组织单位名称是什么?
[Unknown]: test
您的组织名称是什么?
[Unknown]: test
您所在的城市或区域名称是什么?
[Unknown]: hefei
您所在的省/市/自治区名称是什么?
[Unknown]: anhui
该单位的双字母国家/地区代码是什么?
[Unknown]: CN
CN=fei, OU=test, O=test, L=hefei, ST=anhui, C=CN是否正确?
[否]: y
会在当前目录下生成一个证书:keystore.p12,同时记住你在生成证书时候输入的密钥库口令。
搭建一个简单的SpringBoot项目
注意将生成的keystore.p12拷贝至resource目录下,我的工程结构和内容大致如下图
Https相关配置
application.properties
server.port: 8443
server.ssl.key-store: classpath:keystore.p12
server.ssl.key-store-password: 生成证书时候输入的密钥库口令
server.ssl.keyStoreType: PKCS12
server.ssl.keyAlias: tomcat
验证
启动工程,浏览器访问https://localhost:8443
结语
欢迎关注微信公众号『码仔zonE』,专注于分享Java、云计算相关内容,包括SpringBoot、SpringCloud、微服务、Docker、Kubernetes、Python等领域相关技术干货,期待与您相遇!