[转帖]SpringBoot配置SSL 坑点总结【密码验证失败、连接不安全】
前言
在SpringBoot服务中配置ssl,无非就是下载证书设置一下配置文件的问题,这里主要记录我在配置的过程中遇到的坑点。
如果是新手上道的话建议结合其他的资料或者博客一起参考,因为本篇文章对具体如何配置讲的比较少。
1.证书绑定问题
首先,阿里云有免费的ssl证书,而且可以随意选择要下载的证书类型,这点是很方便的,因为在不同的环境下可能需求不同,在这里直接选择想要的类型就可以了。

但需要注意的是,证书也是分类型的,而阿里的免费证书 (我用的 DigiCert 免费版 SSL) 是 单域名证书,也就是一个证书只能绑定到一个域名上,例如:baidu.com 和 fanyi.baidu.com 是需要两个SSL证书的,他们的证书不能通用(尽管他们两的二级域名是一样的),这是第一个坑点,单域名证书不能同时绑定两个三级域名,即使这两个三级域名的二级域名是同一个。
如果你使用的ssl证书绑定的是 xxx.you.com ,然后你当前服务器使用的是 yyy.you.com,那么你的网站就会出现“不安全”的访问字样,也就是小红锁。

2.证书和密码不匹配
我下载的是tomcat类型的证书文件,下载下来有一个压缩包,里面有一个pfx文件(证书文件)和一个txt文件(密码)。
注意第二个坑点来了,所下载的证书和密码,全部都是配套的,即使是同一个证书,每一次下载下来也是不同的,所以要注意证书文件和密码不能混用,否则就会出现密码错误、密码不匹配的问题。
3.yaml配置文件问题
server:
port: 443
ssl:
key-store: classpath:ssl/xxxxxxxxxxxx.pfx
key-store-type: "PKCS12"
key-store-password: "xxxxxxx"
这里需要注意的有两个点:
3.1 解密类型和证书类型是相关的
还记得我上面提到的,可以下载多种类型的证书吗,不同类型的证书下载下来的后缀名是不一样的,他们对应的配置项 key-store-type 也是不一样的,如果你选择的也是tomcat类型,证书后缀名也是 pfx,那大概率和我的是一样的 PKCS12 ,否则,你应该参考官方文档,点击右侧的帮助按钮:

进去查看配置文件,寻找关键字keystoretype,照着文档里的类型就对了。

3.2 配置文件参数混淆
在idea中写配置文件的时候,会有自动提示的,很容易会把 key-store-password 这个参数写成 key-password,因为语法补全会同时弹出这两个看起来很相似的参数。虽然我也不知道为什么有两个这么容易混淆的参数,但它确实是有,而且一旦写错,很难发现[┭┮﹏┭┮] ,会一直报错说密码错误或者密码不匹配之类的。

后记
这篇文章主要是记录SpringBoot配置SSL过程中可能遇到的坑点,对具体的配置操作其实讲的比较少,希望能够帮助到你 ^ _ ^。
[转帖]SpringBoot配置SSL 坑点总结【密码验证失败、连接不安全】的更多相关文章
- Springboot配置ssl使用https
SSL(Secure Sockets Layer 安全套接层)是为网络通信提供安全及数据完整性的一种安全协议,SSL在网络传输层对网络连接进行加密,SSL协议位于TCP/IP协议与各种应用层协议之间, ...
- springboot配置SSL自签名证书
1.证书生成 每一个JDK或者JRE里都有一个工具,叫做:keytool,安装了jdk或jre之后,配置好JAVA环境之后,就可以直接在控制台使用该命令生成自签名证书: 在控制台输入: keytool ...
- Springboot 配置 ssl 实现HTTPS 请求 & Tomcat配置SSL支持https请求
SSL(Secure Sockets Layer 安全套接层),及其继任者传输层安全(Transport Layer Security,TLS)是为网络通信提供安全及数据完整性的一种安全协议.TLS与 ...
- [转帖]nginx配置ssl加密(单/双向认证、部分https)
nginx配置ssl加密(单/双向认证.部分https) https://segmentfault.com/a/1190000002866627 nginx下配置ssl本来是很简单的,无论是去认证 ...
- SpringBoot配置SSL证书支持
Spring Boot配置ssl证书 一.申请SSL证书 在各大云服务商都可以申请到SSL官方证书. 我这里是在阿里云上申请的,申请后下载,解压.如图: 二.用JDK中keytool是一个证书管理工 ...
- 轻松把玩HttpClient之配置ssl,采用绕过证书验证实现https
上篇文章说道httpclient不能直接访问https的资源,这次就来模拟一下环境,然后配置https测试一下.在前面的文章中,分享了一篇自己生成并在tomcat中配置ssl的文章<Tomcat ...
- springboot配置ssl证书
springboot默认使用的是tomcat: 1.先到阿里云上注册一个证书,绑定域名:后面可以在管理中下载证书,下载tomcat对应的证书(一个*.pfx文件和*.txt文件) 2.将pfx文件拷贝 ...
- [转帖]nginx配置ssl证书实现https访问
https://www.cnblogs.com/tianhei/p/7726505.html 今天就是如此处理的 感觉挺不错的. 一,环境说明 服务器系统:ubuntu16.04LTS 服务器IP地址 ...
- springboot配置ssl访问
第一步:########################################### # 端口设置 ########################################### s ...
- springboot配置ssl变成https证书
前段时间跳槽了,疫情期间啥也干,回想了这个项目当中的一些新接触的东西记下来,为了方便以后自己看,也给新手提供以下便利.如果这边篇随笔能够给你带来便利,小衲不胜荣幸,如果有错误也欢迎批评指正,大家共同学 ...
随机推荐
- antd ui的from使用问题
select 的allowClear失效问题 select的value与allowClear同时使用会导致allowClear失效 解决方法 from包装一层,通过const [form] = For ...
- Volcano:带你体验容器与批量计算的碰撞的火花
摘要:今年(2020)7月初,Volcano 发布了1.0版本.1.0做为里程碑版本,在Volcano整个规划中起到了承上启下的作用.此次发布的1.0版本支持了GPU共享,作业动态扩缩容,批任务抢占等 ...
- 如何极速极速搭建个人博客?Copy攻城狮用的这一招很优秀!
摘要:在中国功夫中,"天下武功,无坚不摧,唯快不破",在编程的世界里,如何快速搭建一个属于自己的博客呢?那么 Pagic + Vercel 应该是个不错的选择!接下来,由Copy攻 ...
- 一文带你了解什么是GitOps
摘要:说起GitOps,可能很多朋友马上会联想到DevOps,那么GitOps和DevOps之间有什么关系.又有什么区别呢? 本文分享自华为云社区<浅谈GitOps>,作者: 敏捷的小智. ...
- 再谈BOM和DOM(3):DOM节点操作-元素样式修改及DOM内容增删改查
操作节点,先得选择节点,就得知道节点选择器与DOM节点查找 DOM节点选择器 W3C提供了比较方便的定位节点的方法和属性 getElementById() 一个参数:元素标签的ID getElemen ...
- 火山引擎DataLeap如何解决SLA治理难题(一):应用场景与核心概念介绍
更多技术交流.求职机会,欢迎关注字节跳动数据平台微信公众号,回复[1]进入官方交流群 基于火山引擎分布式治理的理念,数据平台数据治理团队自研了火山引擎DataLeap SLA保障平台,目前已在字节内部 ...
- 通过 Homebrew 在 Mac OS X 上安装和配置 Redis
通过使用 Homebrew,可以大大降低在 Mac OS X 上设置和配置开发环境的成本. 让我们安装 Redis. $ brew install redis 安装后,我们将看到一些有关配置注意事项的 ...
- VS以及C++开发和学习使用注意事项
VS以及C++开发使用注意事项 在vs2013版本开始出现安全检查 最好提前禁用错误4996 制表符问题:Visual Studio中设置Tab键对应空格数的方如下:依次选择:工具-〉选项 -〉文本编 ...
- Dubbo 泛化调用在vivo统一配置系统的应用
作者:vivo 互联网服务器团队- Wang Fei.LinYupan Dubbo泛化调用特性可以在不依赖服务接口API包的场景中发起远程调用, 这种特性特别适合框架集成和网关类应用开发. 本文结合在 ...
- 为什么我要迁移SpringBoot到函数计算
前言 为什么要迁移? 我们的业务有很多对外提供服务的 RESTful API,并且要执行很多不同的任务,例如同步连锁 ERP 中的商品信息到美团/饿了么等平台,在线开发票等.由于各种 API 和任务执 ...