wso2wso2-enterprise-integratorwso2-data-services-server

error during connection to SQL Server using Micro Integrator 4.0.2


I have create Dataservice using Micro Integrator 4.2.0 to consume data from SQL Server 2012 ,it works fine in my local instance of micro integrator using this config :

<config id="mscrm">    
<property name="driverClassName">com.microsoft.sqlserver.jdbc.SQLServerDriver</property>    
<property name="url">jdbc:sqlserver://********:1433;databaseName=********;integratedSecurity=false;encrypt=false</property>    
<property name="username">*******</property>    
<property name="password">********</property>  
</config>

but in the prod instance in kubernetes cluster ,i got errors:

com.microsoft.sqlserver.jdbc.SQLServerException: The driver could not establish a secure connection to SQL Server by using Secure Sockets Layer (SSL) encryption. Error: "The server selected protocol version TLS10 is not accepted by client preferences [TLS13, TLS12]". ClientConnectionId:17a956f9-6d42-484f-9cff-62af192ad2f7

        at org.wso2.micro.integrator.dataservices.core.description.config.RDBMSConfig.<init>(RDBMSConfig.java:39)
        at org.wso2.micro.integrator.dataservices.core.description.config.ConfigFactory.getRDBMSConfig(ConfigFactory.java:91)
        at org.wso2.micro.integrator.dataservices.core.description.config.ConfigFactory.createConfig(ConfigFactory.java:59)
        at org.wso2.micro.integrator.dataservices.core.DataServiceFactory.createDataService(DataServiceFactory.java:168)
        at org.wso2.micro.integrator.dataservices.core.DBDeployer.createDBService(DBDeployer.java:819)
        at org.wso2.micro.integrator.dataservices.core.DBDeployer.processService(DBDeployer.java:1182)

Solution

  • I have resolved the issue by removing TLSv1, TLSv1.1 from the java.security file in JAVA 17

    jdk.tls.disabledAlgorithms=SSLv3, RC4, DES, MD5withRSA, \
        DH keySize < 1024, EC keySize < 224, 3DES_EDE_CBC, anon, NULL, \
        include jdk.disabled.namedCurves