springboot 配置ssl支持https

springboot 配置ssl支持https

以下信息请根据实际情况修改!!!

1. 创建keystore

KeyStore是一个用于存储和管理加密密钥和证书的存储库。它通常被用于各种应用和系统中,以保护敏感数据和确保安全通信。KeyStore可以被看作是一种加密的"保险箱",用于存放密钥、密钥对和证书等安全相关的数据。

通过java的keytool创建keyStore

bash 复制代码
keytool -genkeypair -alias mykey -keyalg RSA -keysize 2048 -keystore keystore.jks -validity 365 -storepass mypassword -keypass mypassword -dname "CN=localhost, OU=MyOrg, O=MyOrg, L=MyCity, ST=MyState, C=MyCountry"

解释各个参数:

-genkeypair:生成密钥对(公钥和私钥)。

-alias mykey:指定密钥的别名(在密钥库中引用密钥时使用)。

-keyalg RSA:指定密钥算法(这里是 RSA)。

-keysize 2048:指定密钥大小(位)。

-keystore keystore.jks:指定密钥库文件的名称(如果文件不存在,则创建它)。

-validity 365:指定证书的有效期(天)。

-storepass mypassword:指定密钥库的存储密码。

-keypass mypassword:指定密钥的密码(如果与密钥库密码相同,可以省略)。

-dname:指定证书的主题信息(DN,Distinguished Name),包括通用名称(CN)、组织单位(OU)、组织(O)、城市(L)、州/省(ST)和国家(C)。

2. 在springboot的application.yml配置文件中配置相关内容

yaml 复制代码
server:  
  port: 8443 # HTTPS的默认端口是443,但443端口通常需要管理员权限才能绑定  
  ssl:  
    key-store: classpath:keystore.jks # 密钥库的位置,相对于classpath  对应keytool生成时的-keystore
    key-store-type: JKS # 密钥库类型,默认为JKS  
    key-store-password: mypassword # 密钥库密码  对应keytool生成时的-storepass
    key-alias: mykey # 密钥别名  对应keytool生成时的-alias
    key-password: mypassword # 密钥别名  对应keytool生成时的-keypass
    # 如果你使用的是PKCS12密钥库,则需要如下配置,相应信息根据实际情况修改
    # key-store-type: PKCS12  
    # key-store: classpath:keystore.p12  
    # key-store-password: yourpassword  
    # 如果需要,还可以配置信任库  
    # trust-store: classpath:truststore.jks  
    # trust-store-password: trustpassword  
    # trust-store-type: JKS  
    # 启用SSL客户端认证(可选)  
    # client-auth: need
相关推荐
老华带你飞4 小时前
实习记录小程序|基于SSM+Vue的实习记录小程序设计与实现(源码+数据库+文档)
java·数据库·spring boot·小程序·论文·毕设·实习记录小程序
my_styles4 小时前
docker-compose部署项目(springboot服务)以及基础环境(mysql、redis等)ruoyi-ry
spring boot·redis·后端·mysql·spring cloud·docker·容器
编程、小哥哥5 小时前
互联网大厂Java面试:从Spring Boot到微服务架构的技术深挖
java·spring boot·redis·微服务·prometheus·面试技巧
caihuayuan57 小时前
生产模式下react项目报错minified react error #130的问题
java·大数据·spring boot·后端·课程设计
一只码代码的章鱼7 小时前
Spring Boot- 2 (数万字入门教程 ):数据交互篇
spring boot·后端·交互
编程、小哥哥7 小时前
Java大厂面试:从Web框架到微服务技术的场景化提问与解析
java·spring boot·微服务·面试·技术栈·数据库设计·分布式系统
苹果酱056710 小时前
React方向:react脚手架的使用
java·vue.js·spring boot·mysql·课程设计
卡戎-caryon10 小时前
【Linux网络与网络编程】12.NAT技术&&内网穿透&&代理服务
linux·运维·服务器·网络·网络协议·https
编程乐学(Arfan开发工程师)10 小时前
07、基础入门-SpringBoot-自动配置特性
java·spring boot·后端
会敲键盘的猕猴桃很大胆10 小时前
Day11-苍穹外卖(数据统计篇)
java·spring boot·后端·spring·信息可视化