es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

La antigua aplicación heredada no funciona con TLS 1.2.

Tenemos una aplicación antigua que fue construida hace años por personas desconocidas. Ahora estamos llevando a cabo un proyecto para deshabilitar TLS 1.0 y 1.1 globalmente en nuestro entorno y, por supuesto, esta aplicación deja de funcionar. El problema es que la aplicación está utilizando un controlador OLEDB antiguo para conectarse a su base de datos alojada en un servidor MSSQL 2017.
La aplicación en sí se conecta a su base de datos para crear informes financieros y es crucial para los cierres contables de esa región.
Consta de 2 archivos, un archivo de aplicación que básicamente solo es ejecutable y un archivo de configuración.
Esto es lo que contiene el archivo de configuración:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <section name="Parameters">
    <item key="CompanyID" value="XX"></item>
    <item key="Company_Name" value="Nombre de la empresa"></item>
    <item key="ServerIp" value="SQLSERVER"></item>
    <item key="DbName" value="BASEDEDATOS"></item>
    <item key="UserID" value="SQLLOGIN"></item>
    <item key="UserPass" value="Contraseña"></item>
  </section>
</configuration>

He intentado verificar en la configuración de la aplicación si es posible cambiar el controlador, pero no hay tal opción. No hay nada en el registro que indique a la aplicación qué controlador utilizar. No está utilizando una conexión ODBC existente.
Estaba pensando que podría ser posible agregar una línea en el archivo de configuración que indique a la aplicación qué controlador utilizar al conectarse a la base de datos, pero no tengo el conocimiento para hacerlo y tampoco lo he encontrado al buscar en línea.

Tags:  ,

Answer

  1. Avatar for davy.ai

    Solución para aplicación heredada con controlador OLEDB antiguo y deshabilitación de TLS 1.0 y 1.1

    Como experto en IT especializado en TLS1.2, lo primero que puedes hacer es investigar los requisitos técnicos del antiguo controlador OLEDB para determinar si es compatible con TLS1.2. Actualizar el controlador OLEDB a una versión más reciente que sea compatible con TLS1.2 podría resolver el problema. Si no es posible actualizar, puedes probar los siguientes pasos:

    1. Crear una conexión ODBC que utilice TLS 1.2 y se conecte al servidor MSSQL.
    2. Modificar el archivo de configuración de la aplicación heredada para incluir la siguiente línea:

      Item key="ConnectionString" value="DSN=ODBC_CONNECTION_NAME"

      Reemplaza ODBC_CONNECTION_NAME con el nombre que le diste a la conexión ODBC que creaste en el paso 1.

    Esta solución debería solucionar el problema al permitir que la aplicación heredada se conecte a la base de datos utilizando un controlador ODBC compatible con TLS1.2.

Comments are closed.