Solución de problemas de cifrado de conexión en el controlador ODBC
Errores de encadenamiento de certificados
Si ve "Proveedor SSL: la cadena de certificados la emitió una entidad que no es de confianza" o "SSL routines::certificate verify failed: no se puede obtener el certificado del emisor local" en su error:
- El cifrado de conexión está habilitado de forma predeterminada en la versión 18 y posteriores. Los usuarios que cambian de versiones anteriores de ODBC pueden ver estos errores si el cifrado de conexión no se usó anteriormente.
- Los usuarios pueden elegir configurar la palabra clave de cadena
Encrypt
de conexión enno
/optional
para deshabilitar el cifrado de conexión para que coincida con el comportamiento predeterminado anterior a la versión 18. En la interfaz de usuario de configuración de UI, esta opción se establece mediante la lista desplegableConnection Encryption
. - Si se desea el cifrado de conexión,
TrustServerCertificate
también se puede establecer enyes
para omitir la validación del certificado de servidor.
Errores en el nombre de certificado
Si ve "Proveedor SSL: el nombre principal de destino es incorrecto" o "SSL routines::certificate verify failed: el nombre del asunto no coincide con el nombre de host” en su error:
- Es posible que los usuarios vean este error si el nombre de host del certificado devuelto por el servidor no coincide con lo esperado. De forma predeterminada, el nombre del servidor se usa para comprobar el certificado.
- La palabra clave
HostNameInCertificate
se puede usar para especificar el nombre esperado del certificado de servidor. - Como alternativa, también se puede especificar un certificado para que coincida y compruebe el certificado de servidor devuelto con mediante la palabra clave
ServerCertificate
(v18.1+). - También puede usar
TrustServerCertificate
para omitir la validación del certificado de servidor.
Consulte Atributos y palabras clave de cadena de conexión y DSN.