Java : désactiver la validation d’un certificat SSL

Boris HUISGEN April 23, 2012

développement java ssl

Un moyen rapide et pas propre pour désactiver la validation d’un certificat SSL côté client :

SocketFactory socketFactory;
Socket socket;

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)
    {
    }
} };

try
{
    SSLContext sc = SSLContext.getInstance("TLS");
    sc.init(null, trustAllCerts, new java.security.SecureRandom());

    socketFactory = sc.getSocketFactory();
}
catch (GeneralSecurityException e)
{
    e.printStackTrace();
}

socket = socketFactory.createSocket(host, port);

See also

Java EE : charger un fichier de propriétés depuis un WAR
Read more
Java : caster un Object en Map
Read more
Java : itérer sur une Map proprement
Read more