为SpringBoot服务添加HTTPS证书的方法
HTTPS是HTTP的安全版本,旨在提供数据传输层安全性(TLS)。当你的应用不使用HTTP协议的时候,浏览器地址栏就会出现一个不安全的提示。HTTPS加密每个数据包以安全方式进行传输,并保护敏感数据免受窃听者或黑客的攻击。

您可以通过在Web应用程序上安装SSL证书来实现HTTPS,互联网上受信任的证书通常是需要(CA)颁发的证书。为了学习目的,您也可以使用自签名证书,比如:使用Java Keytool生成自签名证书。
一、自签名证书
您可以使用位于JDK bin文件夹下的Keytool生成证书。例如,C:\Program Files\Java\jdk1.8.0_161\bin。可以使用两种自签名证书,如下所示。
- 通过您自己的Java应用程序可以轻松访问JKS(Java密钥库)。JKS仅限于Java,不能从Java外部访问。
- PKCS12:该证书使用的公钥加密标准与语言无关,用于存储加密的私钥和证书。
二、如何生成自签名证书
在Windows的搜索字段中键入cmd以找到命令提示符,然后以“以管理员身份运行”右键单击。使用如下的keytool命令。您可以提及所需的证书名称,如下所示。
C:\Program Files\Java\jdk1.8.0_161\bin> keytool -genkeypair -alias selfsigned_localhost_sslserver -keyalg RSA -keysize 2048 -storetype PKCS12 -keystore ebininfosoft-ssl-key.p12 -validity 3650
自签名证书受密码保护。命令回车之后,会提示输入密码(这个密码要记住,后面会用到)和其他详细信息,如以下屏幕截图所示。
完成上述步骤后,便会创建PKS密钥并将其存储在JDK Bin文件夹下。
三、将SSL应用于Spring Boot应用程序
从JDK bin文件夹复制ebininfosoft-ssl-key并将其放在Spring Boot Application的src / main / resources下。
如下所示,将SSL密钥信息添加到application.properties中。
#SSL Key Info security.require-ssl=true server.ssl.key-store-password=生成证书的密码 server.ssl.key-store=src/main/resources/ebininfosoft-ssl-key.p12 server.ssl.key-store-type=PKCS12
四、写一个Controller做简单的测试
@RestController
@RequestMapping("/home")
public class HomeController {
@RequestMapping(value = "/", method = RequestMethod.GET)
public String hello() {
return "welcome to spring boot application";
}
}
如果您在不使用HTTPS的情况下访问Rest Endpoint,则会在浏览器中收到“Bad Request”消息。如果您使用HTTPS来访问URL,则会得到如下响应:"welcome to spring boot application"
作者:字母哥博客
以上就是为SpringBoot服务添加HTTPS证书的方法的详细内容,更多关于SpringBoot服务添加HTTPS证书的资料请关注其它相关文章!
代码知识SEO上一篇 : java calendar 日期实现不断加一天的代码
下一篇 : IDEA入门级使用教程你居然还在用eclipse?
-
SEO外包最佳选择国内专业的白帽SEO机构,熟知搜索算法,各行业企业站优化策略!
SEO公司
-
可定制SEO优化套餐基于整站优化与品牌搜索展现,定制个性化营销推广方案!
SEO套餐
-
SEO入门教程多年积累SEO实战案例,从新手到专家,从入门到精通,海量的SEO学习资料!
SEO教程
-
SEO项目资源高质量SEO项目资源,稀缺性外链,优质文案代写,老域名提权,云主机相关配置折扣!
SEO资源
-
SEO快速建站快速搭建符合搜索引擎友好的企业网站,协助备案,域名选择,服务器配置等相关服务!
SEO建站
-
快速搜索引擎优化建议没有任何SEO机构,可以承诺搜索引擎排名的具体位置,如果有,那么请您多注意!专业的SEO机构,一般情况下只能确保目标关键词进入到首页或者前几页,如果您有相关问题,欢迎咨询!