Merge pull request #13088 from icha024

* gh-13088:
  Fix test in "Truststore password if SSLstoreprovider present"
  Use empty trust-store password if SSL store provider present
pull/13312/merge
Madhura Bhave 7 years ago
commit 9229b6f248

@ -118,6 +118,7 @@ class SslConnectorCustomizer implements TomcatConnectorCustomizer {
SslStoreProviderUrlStreamHandlerFactory.KEY_STORE_URL);
}
if (sslStoreProvider.getTrustStore() != null) {
protocol.setTruststorePass("");
protocol.setTruststoreFile(
SslStoreProviderUrlStreamHandlerFactory.TRUST_STORE_URL);
}

@ -31,8 +31,10 @@ import org.apache.catalina.webresources.TomcatURLStreamHandlerFactory;
import org.apache.tomcat.util.net.SSLHostConfig;
import org.junit.After;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
import org.springframework.boot.testsupport.rule.OutputCapture;
import org.springframework.boot.web.server.Ssl;
import org.springframework.boot.web.server.SslStoreProvider;
import org.springframework.core.io.ClassPathResource;
@ -54,6 +56,9 @@ public class SslConnectorCustomizerTests {
private Connector connector;
@Rule
public OutputCapture output = new OutputCapture();
@Before
public void setup() {
this.tomcat = new Tomcat();
@ -64,6 +69,7 @@ public class SslConnectorCustomizerTests {
@After
public void stop() throws Exception {
System.clearProperty("javax.net.ssl.trustStorePassword");
ReflectionTestUtils.setField(TomcatURLStreamHandlerFactory.class, "instance",
null);
ReflectionTestUtils.setField(URL.class, "factory", null);
@ -167,6 +173,7 @@ public class SslConnectorCustomizerTests {
@Test
public void customizeWhenSslStoreProviderPresentShouldIgnorePasswordFromSsl()
throws Exception {
System.setProperty("javax.net.ssl.trustStorePassword", "trustStoreSecret");
Ssl ssl = new Ssl();
ssl.setKeyPassword("password");
ssl.setKeyStorePassword("secret");
@ -179,6 +186,7 @@ public class SslConnectorCustomizerTests {
customizer.customize(connector);
this.tomcat.start();
assertThat(connector.getState()).isEqualTo(LifecycleState.STARTED);
assertThat(this.output.toString()).doesNotContain("Password verification failed");
}
private KeyStore loadStore() throws KeyStoreException, IOException,

Loading…
Cancel
Save