【发布时间】:2019-10-17 11:54:27
【问题描述】:
我正在尝试使用服务器端的自签名证书通过 localhost 中的 https 访问在 Netty 上运行的 Spring Boot 应用程序。
我的application.properties 看起来像这样:
server.ssl.enabled=true
server.ssl.key-store-type=JKS
server.ssl.key-store=test.jks
server.ssl.key-store-password=password
server.ssl.key-alias=testkey
我通过以下方式生成了密钥库:
keytool -genkeypair -alias testkey -keyalg RSA -keysize 4096 -keystore test.jks -validity 36500
我收到以下错误:
io.netty.handler.codec.DecoderException:javax.net.ssl.SSLHandshakeException:收到致命警报:certificate_unknown 在 io.netty.handler.codec.ByteToMessageDecoder.callDecode(ByteToMessageDecoder.java:472) 在 io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:278) 在 io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:374) 在 io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:360)
我尝试将证书导入 JDK 信任库,甚至导入操作系统,但仍然相同。一位消息人士建议将密钥别名命名为“testkey”以使其工作,但这也不起作用。由于 Google 中没有其他提及此错误的信息,因此希望您能提供帮助。
【问题讨论】:
标签: ssl netty spring-webflux reactor-netty