/* * Copyright (c) 2012-2015 iWave Software LLC * All Rights Reserved */ package com.iwave.ext.windows.winrm; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import javax.net.ssl.*; import java.security.SecureRandom; /** * SSL Utilities such as trusting all SSL Certificates. */ public class SSLUtil { private static Logger log = LoggerFactory.getLogger(SSLUtil.class); private static SSLContext trustAllContext; public static synchronized SSLContext getTrustAllContext() { if (trustAllContext == null) { try { SSLContext sc = SSLContext.getInstance("SSL"); sc.init(null, newTrustManagers(), new SecureRandom()); trustAllContext = sc; } catch (Exception e) { log.error("Unable to register SSL TrustManager to trust all SSL Certificates", e); } } return trustAllContext; } private static TrustManager[] newTrustManagers() { return new TrustManager[] { new AllTrustManager() }; } private static class AllTrustManager implements 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) { } } }