Comparteix a través de


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 en no/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 desplegable Connection Encryption.
  • Si se desea el cifrado de conexión, TrustServerCertificate también se puede establecer en yes 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.