16. Spring Boot启用HTTPS

16. Spring Boot启用HTTPS

默认情况下,Spring Boot应用程序在应用程序启动时使用HTTP的8080端口。

  • 获取SSL证书 - 创建自签名证书或从证书颁发机构获取证书
  • 启用HTTPS和443端口

自签证书

要创建自签名证书,Java运行时环境与证书管理实用程序密钥工具捆绑在一起。 此实用程序工具用于创建自签名证书。 它显示在这里给出的代码中 -

复制代码
path_to_keytool > keytool.exe -genkey -alias tomcat -storetype PKCS12 -keyalg RSA -keysize 2048 -keystore keystore.p12 -validity 3650
Enter keystore password:
   Re-enter new password:
   What is your first and last name?
   [Unknown]:
   What is the name of your organizational unit?
   [Unknown]:
   What is the name of your organization?
   [Unknown]:
   What is the name of your City or Locality?
   [Unknown]:
   What is the name of your State or Province?
   [Unknown]:
   What is the two-letter country code for this unit?
   [Unknown]:
   Is CN = Unknown, OU=Unknown, O = Unknown, L = Unknown, ST = Unknown, C = Unknown correct?
   [no]: yes

此代码将生成名为keystore.p12的PKCS12密钥库文件,证书别名为tomcat。

配置HTTPS

在application.properties文件中提供服务器端口:443,密钥存储文件路径,密钥存储密码,密钥存储类型和密钥别名。如下给出的代码 -

复制代码
server.port: 443
server.ssl.key-store: keystore.p12
server.ssl.key-store-password: springboot
server.ssl.keyStoreType: PKCS12
server.ssl.keyAlias: tomcat

如果是在application.yml 下面使用YAML属性,则可以使用以下代码 -

复制代码
server:
   port: 443
   ssl:
      key-store: keystore.p12
      key-store-password: springboot
      keyStoreType: PKCS12
      keyAlias: tomcat

可以创建可执行的JAR文件,并使用以下Maven或Gradle命令运行spring boot应用程序。

对于Maven,可以使用以下命令 -

复制代码
mvn clean install

在"BUILD SUCCESS"之后,在target 目录下找到JAR文件。

现在,使用以下命令运行JAR文件 -

java --jar <JARFILE>

现在,应用程序已在Tomcat端口443上启动。

相关推荐
Java女侠_9年实战6 分钟前
JVM调优“瞎调”——没分析GC日志,乱改堆内存参数导致OOM
后端
来自远方的老作者6 分钟前
第10章 面向对象-10.4 继承
开发语言·python·继承·单继承·多继承·super函数
做个文艺程序员8 分钟前
流式输出(SSE)在 Spring Boot 中的实现【OpenClAW + Spring Boot 系列 第3篇】
java·spring boot·后端
逻辑驱动的ken8 分钟前
Java高频面试考点场景题09
java·开发语言·数据库·算法·oracle·哈希算法·散列表
小手cool10 分钟前
如何在Java中根据另一个配对集合对一个集合进行排序
java·开发语言
云烟成雨TD13 分钟前
Spring AI Alibaba 1.x 系列【28】Nacos Skill 管理中心功能说明
java·人工智能·spring
升鲜宝供应链及收银系统源代码服务15 分钟前
OMS 订单模块重构正式文档(一)---升鲜宝生鲜配送供应链管理系统
java·开发语言·重构·生鲜配送源代码·生鲜供应链源代码
Han.miracle19 分钟前
Redis 全套笔记:基础 API + 三大架构 + 缓存三大问题
java·windows·redis
zzb158021 分钟前
Fragment 生命周期深度图解:从 onAttach 到 onDetach 完整流程(面试必备)
android·java·面试·安卓
你有医保你先上27 分钟前
Elasticsearch Go 客户端
后端·elasticsearch·go