我无法使我的项目加载jks密钥库。这是一个Spring Boot 2.1.0-RELEASE。我已经设置了以下选项,以使用SSL配置Tomcat服务器
我不是在编写代码,而是从依赖项中加载代码,我必须更改要发布的文件的名称。
server.port=8080
server.ssl.enabled=true
server.ssl.trust-store=classpath:101816-my-keyfile.jks
server.ssl.trust-store-password=changeit
server.ssl.key-store=classpath:101816-my-keyfile.jks
server.ssl.key-password=changeit
server.ssl.key-alias=my-key-alias
我尝试更改文件以证明它实际上是在查找类路径资源。
我尝试使用keytool命令将其转换为PKCS#12:
keytool -importkeystore \
-srckeystore ./101816-my-keyfile.jks \
-destkeystore ./101816-my-keyfile.jks \
-deststoretype pkcs12
我尝试使用具有不同目标类型的同一命令将其转换(返回)为JKS和JCEKS。
我已经在Java版本的Oracle“ 1.8.0_191”和Openjdk 8上运行。
我尝试使用JDK 11和JDK 8中的keytool。
但是除了以下内容,我无法始终得到任何结果:
Caused by: java.io.IOException: Invalid keystore format
at sun.security.provider.JavaKeyStore.engineLoad(JavaKeyStore.java:658) ~[?:1.8.0_191]
at sun.security.provider.JavaKeyStore$JKS.engineLoad(JavaKeyStore.java:56) ~[?:1.8.0_191]
at sun.security.provider.KeyStoreDelegator.engineLoad(KeyStoreDelegator.java:224) ~[?:1.8.0_191]
at sun.security.provider.JavaKeyStore$DualFormatJKS.engineLoad(JavaKeyStore.java:70) ~[?:1.8.0_191]
at java.security.KeyStore.load(KeyStore.java:1445) ~[?:1.8.0_191]
at org.apache.tomcat.util.net.SSLUtilBase.getStore(SSLUtilBase.java:160) ~[tomcat-embed-core-9.0.12.jar!/:9.0.12]
at org.apache.tomcat.util.net.SSLHostConfigCertificate.getCertificateKeystore(SSLHostConfigCertificate.java:204) ~[tomcat-embed-core-9.0.12.jar!/:9.0.12]
at org.apache.tomcat.util.net.jsse.JSSEUtil.getKeyManagers(JSSEUtil.java:184) ~[tomcat-embed-core-9.0.12.jar!/:9.0.12]
at org.apache.tomcat.util.net.AbstractJsseEndpoint.createSSLContext(AbstractJsseEndpoint.java:112) ~[tomcat-embed-core-9.0.12.jar!/:9.0.12]
at org.apache.tomcat.util.net.AbstractJsseEndpoint.initialiseSsl(AbstractJsseEndpoint.java:85) ~[tomcat-embed-core-9.0.12.jar!/:9.0.12]
at org.apache.tomcat.util.net.NioEndpoint.bind(NioEndpoint.java:224) ~[tomcat-embed-core-9.0.12.jar!/:9.0.12]
at org.apache.tomcat.util.net.AbstractEndpoint.start(AbstractEndpoint.java:1108) ~[tomcat-embed-core-9.0.12.jar!/:9.0.12]
at org.apache.coyote.AbstractProtocol.start(AbstractProtocol.java:550) ~[tomcat-embed-core-9.0.12.jar!/:9.0.12]
at org.apache.catalina.connector.Connector.startInternal(Connector.java:957) ~[tomcat-embed-core-9.0.12.jar!/:9.0.12]