spring-boot - 如何配置 Spring Boot 2 WebFlux 以使用 SSL?
问题描述
我得到的只是javax.net.ssl.SSLHandshakeException: no cipher suites in common
。
这是重现行为的方法:
- 转到http://start.spring.io并添加“Reactive Web”作为 Spring 2.0.1 的依赖项
- 解压存档
- 跑
keytool -genkeypair -keystore demo/src/main/resources/keystore.jks
- 选择一个密码
- 只要
[Unknown]
是默认就回车Yes
,询问是否CN=Unknown, OU=Unknown, ...
正确时回车。 - 对密钥使用与密钥库相同的密码
将以下内容添加到 application.properties
server.ssl.key-store=classpath:keystore.jks server.ssl.key-store-password=<my-secure-pwd>
构建并运行应用程序
- 跑
curl https://localhost:8080
这是我第一次将 SSL 添加到 Spring Boot 应用程序中,我认为一定有问题 - 但我不知道是什么。也许你们中的任何人都可以提供一些帮助?谢谢!
解决方案
好的,事实证明您需要将密钥算法设置为 RSA 才能使其工作。
keytool -genkeypair -keyalg RSA -keystore src/main/resources/keystore.jks
推荐阅读
- ms-access - Access 2010 vba - 从 excel 数字、字母或空格导入
- c++ - 如何根据给定的字符长度拆分 QString?
- java - 裁剪带有轮廓的图像
- javascript - 在 Safari 中获取“e.entries 不是函数”错误
- node.js - 无法将 Heroku 上托管的 Node 应用程序与 MongoDB 集群连接
- json - 如何过滤没有嵌套范围的嵌套 JSON 数据
- c++ - C++ 从抽象类型定义类成员
- go - 如何用索引构造一个翻转的单个位域?
- shell - gnuplot replot 不绘图
- python-3.x - 需要在 pyspark 中加入多个表: