Groovy Script
disableSSLVerification işlevi, SSL doğrulamasını devre dışı bırakmak için tasarlanmıştır. Bu işlev, bağlantılar sırasında SSL sertifikalarını ve ana bilgisayar adlarını (hostname) doğrulamadan geçiş sağlar.
Aşağıdaki metot eklenip connection açmadan önce çağrılarak PKIX hatası atlatılır.
import javax.net.ssl.*
import java.security.cert.X509Certificate
def disableSSLVerification() {
TrustManager[] trustAllCerts = [
[
checkClientTrusted: { X509Certificate[] certs, String authType -> },
checkServerTrusted: { X509Certificate[] certs, String authType -> },
getAcceptedIssuers: { null }
] as X509TrustManager
]
SSLContext sc = SSLContext.getInstance("SSL")
sc.init(null, trustAllCerts, new java.security.SecureRandom())
HttpsURLConnection.setDefaultSSLSocketFactory(sc.socketFactory)
HttpsURLConnection.setDefaultHostnameVerifier({ hostname, session -> true } as HostnameVerifier)
}
Bu işlev, güvenlik açıklarına yol açabileceğinden dolayı dikkatli bir şekilde ve yalnızca gerekli durumlarda kullanılmalıdır. Özellikle güvenli olmayan test ortamlarında veya doğrulama sürecinin istenmediği durumlarda kullanılabilir.