Itgenclr004 SSL connection error on MySQL due to requiring SSL mode (Query Tool 20.1.529)

good evening,

with Query Tool Beta 20.1.529, the connection to one of my MySQL servers does not work anymore. It was working fine with a previous version 20.1.4xx but not sure of which one.

I do no connect very often to this MySQL server, so I’m unsure on what version I was running before upgrading to 20.1.529 due to Exact Online API summer festivities.

itgenclr004:
Een verbinding met de database ‘Port Adhoc\darwin+SQL’ kon niet worden opgebouwd als gebruiker ‘’.
The data container with alias ‘Darwin’ could not be opened on provider ‘MySql’.
SSL Connection error.
Bericht ID: c914c4a3-25fa-4745-a5c0-ac51fb794bac
Opgetreden (UTC): 31/08/2021 16:31:17
System.IO.IOExceptionSystem.AggregateExceptionMySql.Data.MySqlClient.MySqlExceptionValidationExceptionValidationException
à System.Net.Security.SslState.InternalEndProcessAuthentication(LazyAsyncResult lazyResult)
à System.Net.Security.SslState.EndProcessAuthentication(IAsyncResult result)
à System.Threading.Tasks.TaskFactory1.FromAsyncCoreLogic(IAsyncResult iar, Func2 endFunction, Action1 endAction, Task1 promise, Boolean requiresSynchronization)

Obviously there is an issue with SSL given “SSL Connector error”. My database definition is:

<database order="14" provider="MySql" 
          alias="Darwin"
          userLogonCodeMode="Hidden" 
          passwordMode="Hidden"
          AllowConnectionPooling="false"
          connectionString="Server=myserver.com;Port=3306;Database=mydatabase;User Id=MyuserId;Password=thisisapassword;SslMode=Preferred"
          AllowConnectionStringRewrite="false"		
  />

I’m sure my server is not SSL capable (getting rid of the server anytime soon !). It seems Query Tool does like SslMode=Preferred, not wanting to switch to no SSL connection if SSL is not supported.
I did not found in the MySQL support forums that a noSSL mode could exist.

How can I connect to this MySQL database again?

Adding more information :

  • QueryTool Beta 20.1.407 is able to connect to my old-unsecured ssl-disabled MySql server whereas 20.1.529 raise the above described error.

  • for my own use, I don’t need Invantive Team to work on the above described issue, I will stay with QueryTool Beta 20.1.407 to finish my tasks and then shutdown my server.
    If Invantive wants to investigate further I’ll make myself available for testing.

cheers

The approach taken should override the defaults described on Secure Data Connections. We seem unable to reproduce the problem; a value manually set for SslMode is not overwritten by the overwritable default setting of Required.

In the next 20.2.2 release, there will be additional logging to establish what actually happens. I will let you know when available.

In between time, please try to use None instead of Preferred. That completely disables SSL.

As an alternative, could you try InvalidValue instead of Preferred? When applied, it should raise an error like:

itgenasl001:
The keyword ‘sslmode’ could not be included in the connection string. —> System.ArgumentException: Requested value ‘InvalidValue’ was not found…

You can also enable trace logging (when not yet active) and check the DebugView-output for the following string:

Provider ‘…’ meets criteria to handle the login action using (anonymized) connection string ‘…’

In either case (SslMode=None or SslMode=InvalidValue) there is an SSL connection error, so it looks like that the choice of the SslMode in the connection chain is not effective.

Tests were run on Invantive Query Tool beta 20.1.537.

Looking into DebugView somehow confirms that:

  • SslMode=None

[24332] 09:29:40.36461-WPF-OnStartup-20197770-7426-4024-8b6f-a8e85a9c1380-1: Set provider attribute ‘SslMode’ to value ‘Preferred’.`

  • SslMode=InvalidValue
    I dont see the itgenasI001 message… so strange. Rather I see:

[23728] 09:27:27.18704-WPF-ApplicationWindowBase-61200f1a-c970-4ae7-a8f8-ea348f0b6e71-5: Change value of connection string attribute ‘sslmode’: empty to non-empty’. Last known value origin ‘Unset.’,`

I have sent the two debugview .txt files for review.

Does this problem still occur on the recent 24.0 release?