当前位置:   article > 正文

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"
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

这里需要注意的有两个点:

3.1 解密类型和证书类型是相关的

还记得我上面提到的,可以下载多种类型的证书吗,不同类型的证书下载下来的后缀名是不一样的,他们对应的配置项 key-store-type 也是不一样的,如果你选择的也是tomcat类型,证书后缀名也是 pfx,那大概率和我的是一样的 PKCS12 ,否则,你应该参考官方文档,点击右侧的帮助按钮:
在这里插入图片描述

进去查看配置文件,寻找关键字keystoretype,照着文档里的类型就对了。
在这里插入图片描述

3.2 配置文件参数混淆

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

后记

这篇文章主要是记录SpringBoot配置SSL过程中可能遇到的坑点,对具体的配置操作其实讲的比较少,希望能够帮助到你 ^ _ ^。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Cpp五条/article/detail/595694
推荐阅读
相关标签
  

闽ICP备14008679号