Tengo algunos recursos a los que debo acceder con SSL que utiliza certificados autofirmados. En general, la mayoría de las herramientas tienen una configuración simple para permitir el acceso sin errores o solo una advertencia. Sin embargo, parece que la forma correcta de hacerlo con la JVM es importar el certificado de firma a un almacén de claves como una CA.¿Cómo usar SSL con un certificado autofirmado en groovy?
Tengo un script maravilloso que me gustaría usar, pero preferiría que mi script funcione de manera independiente en cualquier JVM sin modificar el keystore o distribuir un nuevo keystore. ¿Hay una manera simple de anular la verificación de certificación?
En general, hvgotcodes es una mejor solución. Su kilometraje puede variar, por supuesto. El problema con su solución es que todos los hosts ahora son válidos, en lugar de solo los pocos que realmente pretende dejar pasar. Si su código está estrictamente controlado, y está seguro de que solo se conectará a fuentes "de confianza", estará bien. Sin embargo, usted es vulnerable a la dirección equivocada de DNS y a cualquier cantidad de otros problemas de los que estaría protegido si importa sus certificados en un almacén de confianza. También puede establecer la propiedad javax.net.ssl.trustStore en tiempo de ejecución, si tiene un comportamiento más dinámico. –
En general, estoy de acuerdo. Pero existen ciertos contextos de scripting en los que es agradable ignorar por completo la administración de certificados; por ejemplo, donde los servidores de prueba se generan dinámicamente y los almacenes de claves de los clientes tendrían que mantenerse continuamente sincronizados. También vale la pena señalar que otros lenguajes dinámicos como ruby y python hacen de esto una configuración de configuración simple y no imponen la cadena de certificados por defecto, respectivamente. – ataylor
Solo para poner esto en negrita para los lectores que copian/pegan sin pasar por el comentario de @ BrianM.Carr: ** esta solución deshabilita por completo los pasos de verificación del certificado, haciendo que la conexión sea potencialmente vulnerable a los ataques MITM **. – Bruno