spring boot,https,双向ssl认证

本文详细介绍如何在SpringBoot项目中实现SSL双向认证,包括生成服务器端和客户端证书,安装和配置证书,以及通过过滤器验证客户端证书的过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、生成服务器端证书

1、在cmd窗口执行命令:keytool -genkey -v -alias server -keyalg RSA -storetype PKCS12  -keystore  c:\keystore\server.keystore,

  密码随意,自己记住就行。

二、生成客户端证书

1、在cmd窗口执行命令:keytool -genkey -v -alias test -keyalg RSA -storetype PKCS12 -keystore c:\keystore\test.p12,

  密码随意,自己记住就行。

三、导出客户端证书

1、导出客户端证书公钥cer文件。

  在cmd窗口执行命令,输入之前自己设置的密码:

  keytool -export -alias test -keystore c:\keystore\test.p12 -storetype PKCS12  -rfc -file c:\keystore\test.cer

 

2、将客户端公钥导入服务器证书。

  在cmd窗口执行命令,输入之前自己设置的密码:

  keytool -import -v -file c:\keystore\test.cer -keystore c:\keystore\server.keystore

四、安装客户端证书

 双击c:\keystore目录下的test.p12文件,点击下一步:

 

 再次点击下一步:

输入生成证书时设置的密码,点击下一步:

将证书文件存储为个人,点击下一步:

点击完成:

四、添加springboot支持

1、将服务器证书文件server.keystore放到项目的根目录下

2、编辑application.yml文件

3、启动项目,看到https则成功了。

五、测试

1、添加一个java的过滤器,加上一行代码,打好断点:

 

 2、用谷歌浏览器,访问一个过滤器拦截的接口,显示选择证书的选项,则表示个人ssl证书安装成功了:

3、在过滤器的断点中查看是否已经获取到了客户端证书,如果能看到以下信息,则表示成功了:

 

 至此基于springboot的ssl双向认证已经完成了。

转载于:https://www.cnblogs.com/htuao/p/10091458.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值