Release 20.2.200 and PostgreSQL driver v6 implementation

Good afternoon,

After upgrading QueryTool from 20.2.71-PROD+2191 to 20.2.200-PROD+2294 today, my connection to PostGres is broken.

I made several test in regards to past discussion like here or here

My connection chain was:

<database order="12" provider="PostgreSql" 
 alias="Vega"
 userLogonCodeMode="Hidden" 
 passwordMode="Hidden" 
 AllowConnectionPooling="false"
 connectionString="Server=my.server.com;Port=12009;Database=db;User Id=user;Password=my_paswword;TrustServerCertificate=True"
 AllowConnectionStringRewrite="false" 

but after upgrading to 20.2.200-PROD+2294 I get an error:

TrustServerCertificate=true is not supported with SslMode=VerifyFull.

I need to connect to my PostGres server not encrypted. I tried to disable by SslMode=Preferred or SslMode=None but neither works.

I also tried to downgrade, but it is forbidden by the Invantive Installer.

Hhelp appreciated.

Invantive SQL has switched from the version 5 to version 6 PostgreSQL driver on release 20.2.200.

This version 6 driver has several major breaking changes. The most notable ones are:

  • Different naming of SSL mode.
  • Different use of date/times with timestamp on PostgreSQL.

Regarding SSL, an explanation can be found on Security and Encryption | Npgsql Documentation.

You might want to remove TrustServerCertificate and add SSL Mode=VerifyCA, which might be semantically identical to the preceding situation on the PostgreSQL 5 driver.

In case that doesn’t provide the needed level of security or too much, best is to use the Npgsql forums, since they carry the most knowledge on the Npgsql driver settings.

Thanks
the correct option according to the Npgsql forums was: SslMode=Disable

appreciated !

1 like

Added how to connect via SSL:

in regards to the above documentation, establishing a forced SSL connection with a certificate trust bypass should be done as follow in the connection setup:

SslMode=Require;Trust Server Certificate=true