ОБНОВЛЕНИЕ -> Добавление Security.addProvider (new BouncyCastleProvider ());устраняет эту проблему
Следующая ошибка вызвана добавлением ActiveMQ Broker в мою конфигурацию.Если я удаляю конфигурацию JMS, эта ошибка исчезает.
java.security.UnrecoverableKeyException: failed to decrypt safe contents entry:
javax.crypto.BadPaddingException: pad block corrupted
Spring Boot 2.1.1.RELEASE Embedded Tomcat с SSL ActiveMQ @ EnableJMS
ОБНОВЛЕНИЕ: я удалил свой JMSConfiguration.class изприложение и все начало работать.@EnableJMS должен делать что-то, что переопределяет.Я собираюсь систематически комментировать бины в этом классе конфигурации, пока не найду точного виновника.Я бы никогда не подумал, что моя конфигурация JMS Active MQ будет конфликтовать с конфигурацией SSL моего Embedded Tomcat Server.
Я сузил ее до следующего компонента, связанного с JMS, который является причиной.Если я полностью избавлюсь от конфигурации JMS, то я не получу ошибку с паролем.Казалось бы, эти вещи не связаны, но они как-то связаны.
@Bean
public BrokerService broker() throws Exception {
final BrokerService broker = new BrokerService();
Используя приведенную ниже конфигурацию, я получаю сообщение об ошибке при запуске Spring Boot.Если я удаляю все свои классы @Configuration и просто запускаю Spring Boot, эта конфигурация работает нормально.Я пробовал PKCS, JKS, и я пробовал файл: и я переместил файл вокруг, и без радости.Я знаю, что пароль правильный, потому что он будет запускаться нормально, если я удалю свои классы конфигурации и смогу просто ударить по серверу, используя 443 / ssl ...
server.contextPath=/my
server.tomcat.additional-tld-skip-patterns=*.jar
server.compression.enabled=true
server.port=443
server.ssl.key-store:classpath:local-keystore.jks
server.ssl.key-store-password:password
server.ssl.keyStoreType:JKS
server.ssl.keyAlias:tomcat
Обнаружена ошибка
org.apache.catalina.LifecycleException: Protocol handler start failed
at org.apache.catalina.connector.Connector.startInternal(Connector.java:1001)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
at org.apache.catalina.core.StandardService.addConnector(StandardService.java:225)
at org.springframework.boot.web.embedded.tomcat.TomcatWebServer.addPreviouslyRemovedConnectors(TomcatWebServer.java:259)
at org.springframework.boot.web.embedded.tomcat.TomcatWebServer.start(TomcatWebServer.java:197)
at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.startWebServer(ServletWebServerApplicationContext.java:311)
at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.finishRefresh(ServletWebServerApplicationContext.java:164)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:549)
at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:142)
at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:775)
at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:397)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:316)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1260)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1248)
at com.jjkane.Application.main(Application.java:65)
Caused by: java.lang.IllegalArgumentException: keystore password was incorrect
at org.apache.tomcat.util.net.AbstractJsseEndpoint.createSSLContext(AbstractJsseEndpoint.java:114)
at org.apache.tomcat.util.net.AbstractJsseEndpoint.initialiseSsl(AbstractJsseEndpoint.java:85)
at org.apache.tomcat.util.net.NioEndpoint.bind(NioEndpoint.java:224)
at org.apache.tomcat.util.net.AbstractEndpoint.bindWithCleanup(AbstractEndpoint.java:1067)
at org.apache.tomcat.util.net.AbstractEndpoint.start(AbstractEndpoint.java:1149)
at org.apache.coyote.AbstractProtocol.start(AbstractProtocol.java:561)
at org.apache.catalina.connector.Connector.startInternal(Connector.java:998)
... 14 common frames omitted
Caused by: java.io.IOException: keystore password was incorrect
at java.base/sun.security.pkcs12.PKCS12KeyStore.engineLoad(PKCS12KeyStore.java:2108)
at java.base/sun.security.util.KeyStoreDelegator.engineLoad(KeyStoreDelegator.java:243)
at java.base/java.security.KeyStore.load(KeyStore.java:1479)
at org.apache.tomcat.util.net.SSLUtilBase.getStore(SSLUtilBase.java:179)
at org.apache.tomcat.util.net.SSLHostConfigCertificate.getCertificateKeystore(SSLHostConfigCertificate.java:204)
at org.apache.tomcat.util.net.jsse.JSSEUtil.getKeyManagers(JSSEUtil.java:203)
at org.apache.tomcat.util.net.AbstractJsseEndpoint.createSSLContext(AbstractJsseEndpoint.java:112)
... 20 common frames omitted
java.security.UnrecoverableKeyException: failed to decrypt safe contents entry:
javax.crypto.BadPaddingException: pad block corrupted
ОБНОВЛЕНИЕ: та же ошибка после этой модификации ...
server.contextPath=/my
server.tomcat.additional-tld-skip-patterns=*.jar
server.compression.enabled=true
server.port=443
server.ssl.key-store=classpath:local-keystore.p12
server.ssl.key-store-password=tomcat
server.ssl.key-password=tomcat
server.ssl.keyStoreType=PKCS12
server.ssl.keyAlias=tomcat