Как отключить проверку ssl в Java?

Пользователь

от nicolette.stoltenberg , в категории: Java , 3 года назад

Как отключить проверку ssl в Java?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от dmitrypro77 , 3 года назад

@nicolette.stoltenberg Как вариант попробуйте установить следующее свойство у Java:

1
-Dappdynamics.force.default.ssl.certificate.validation=false


Всегда открыт для интересных проектов. Ссылки на мои соц. сети в профиле.

Пользователь

от autumn_parker , 2 года назад

@nicolette.stoltenberg 

Для отключения проверки SSL в Java можно использовать класс TrustManager и SSLContext. Например:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
TrustManager[] trustAllCerts = new TrustManager[]{
    new X509TrustManager() {
        public java.security.cert.X509Certificate[] getAcceptedIssuers() {
            return null;
        }
        public void checkClientTrusted(
            java.security.cert.X509Certificate[] certs, String authType) {
        }
        public void checkServerTrusted(
            java.security.cert.X509Certificate[] certs, String authType) {
        }
    }
};

// Install the all-trusting trust manager
try {
    SSLContext sslContext = SSLContext.getInstance("SSL");
    sslContext.init(null, trustAllCerts, new java.security.SecureRandom());
    HttpsURLConnection.setDefaultSSLSocketFactory(sslContext.getSocketFactory());
} catch (Exception e) {
    System.err.println(e);
}


Этот код создает TrustManager, который принимает все сертификаты, и затем устанавливает его как по умолчанию для всех HttpsURLConnection. Обратите внимание, что это может создавать уязвимости безопасности, и использование этого кода должно быть тщательно обосновано.