Hace un par de días me pidieron que moviera a un nuevo servidor una aplicación hecha con Java 1.8 a un nuevo servidor, dejando de lado todo el tema de la configuración y la seguridad al intentar conectarla con la base de datos SQL Server 2014 me tope con el siguiente error:
El controlador no pudo establecer una conexión segura con SQL Server con el cifrado de Capa de sockets seguros (SSL). Error: “No appropriate protocol (protocol is disabled or cipher suites are inappropriate)”
Solución 1
Creo que el mensaje es muy claro, la conexión ya no es segura.
Investigando un poco encontré la solución mas sencilla (y mejor) aplica todos los parches de actualización que necesita tu SQL Server:
https://learn.microsoft.com/en-us/troubleshoot/sql/database-engine/connect/tls-1-2-support-microsoft-sql-server
PTM nadie sabe que pedo con ese servidor y nadie quiere verlo y mucho menos tocarlo…
Solución 2
Como comentario inicial esta solución no se recomienda pero cuando se tiene que hacer se tiene que hacer… “riesgo informado”
Editar el archivo de configuración de java, este jale chicano consiste en volver a activar los protocolos restringidos para el JRE de Java.
Buscamos la carpeta de instalación de Java por ejemplo:
C:\Program Files (x86)\Java\jre1.8.0_421\lib\security
/usr/lib/jvm/java-8-openjdk-amd64/jre/lib/security
abrimos el archivo java.security, buscamos la siguiente línea y eliminamos los siguientes protocolos:
listo la aplicación puede conectar de nuevo, de nuevo hay que tener en cuenta que esta opción representa un riesgo de seguridad.
Tu solución no funciona en mi IDE
Si después de seguir los pasos de la solución 2 aun tienes problemas para poder correr o depurar tu proyecto en tu IDE favorito, en mi caso uso Eclipse porque ya soy muy viejo, revisa el siguiente menu:
Windows -> Preferences -> Installed JREs
Solo agrega una “Standard VM” con la ubicación del JRE que acabas de modificar.
Deja un comentario