SNI: SSLHandshakeException unrecognized_name - PullRequest
1 голос
/ 26 марта 2019

У меня возникает следующая ошибка при попытке связаться с каким-либо сайтом:

10:29:32.228 [ForkJoinPool-1-worker-1] ERROR com.intuit.karate - javax.net.ssl.SSLHandshakeException: Received fatal alert: unrecognized_name, http call failed after 35 milliseconds for URL: https://{redacted}
10:29:32.229 [ForkJoinPool-1-worker-1] ERROR com.intuit.karate - http request failed: javax.net.ssl.SSLHandshakeException: Received fatal alert: unrecognized_name

Я нашел следующий ответ: https://stackoverflow.com/a/14884941/10791639

Я редактировал karate-apache/src/main/java/com/intuit/karate/http/apache/ApacheHttpClient.java L125, удаляя комментарий из этой строки:

System.setProperty("jsse.enableSNIExtension", "false");

Но у меня все та же проблема, что и раньше. Я не нашел общедоступного веб-сайта, для которого требуется строгое указание имени сервера для воспроизведения моей проблемы.

1 Ответ

1 голос
/ 26 марта 2019

Мы нашли решение, изменив что-то в karate-apache/src/main/java/com/intuit/karate/http/apache/ApacheHttpClient.java:

SSLConnectionSocketFactory socketFactory = new LenientSslConnectionSocketFactory(sslContext, new NoopHostnameVerifier());

становится

SSLConnectionSocketFactory socketFactory = new SslConnectionSocketFactory(sslContext, new NoopHostnameVerifier());

@ Питер, как вы думаете, параметр для использования строгого или мягкого SSL-соединения можетбудет возможность?

...