正常情况下,我们写的服务是http的。但是如何才能让我们的服务提供https服务?
跟着我这篇文章,简单三步就可以让你的服务从http变成https服务!
先讲怎么做,最后讲原理
## 第一步,生成证书
找到我们安装JDK的bin目录
在bin目录下,输入cmd按回车
然后看到,下边的命令行工具,输入以下内容,然后按回车,就让输入密钥库的口令, 也就是设置一个密码。输入以后按回车,然后再确认输入再按回车。然后让输入名字单位之类的,可以直接回车,一路回车就生成成功了,然后可以在jdk的bin目录下看到生成的证书:
keytool -genkeypair -alias selfsigned_localhost_sslserver -keyalg RSA -keysize 2048 -storetype PKCS12 -keystore ebininfosoft-ssl-key.p12 -validity 3650
成功以后可以看到:红框里边的文件。
## 第二步,将第一步生成的证书,放到我们的项目中
放入我们的springboot项目中的 resources目录下
然后再在application.properties中添加配置,开启ssl,开启https。
添加配置内容如下:
#SSL Key Info
security.require-ssl=true
server.ssl.key-store-password=angusangus
server.ssl.key-store=src/main/resources/ebininfosoft-ssl-key.p12
server.ssl.key-store-type=PKCS12
## 第三步验证是否成功
如果不是https请求,则会报错,报错如下
换成https就成功了,如下,我这是使用的swagger。正常使用postmen测试,都可以