Skip to main content

JDBC connection changes

The 2025.2.0 release includes updates that may affect how some database connections authenticate and connect. Two connection types may require action:

  • Microsoft SQL Server (JDBC)
  • Generic JDBC (manually entered driver, URL, or properties)

SQL Server JDBC: database name case sensitivity

The databaseName property must match the database's name with the exact case. If your database is named MyCompanyDB, use databaseName=MyCompanyDB (not mycompanydb). Update the Connection Properties in your SQL Server Datasource to the correct case and click Test Connection.

Generic JDBC: encryption may be required

Some databases now require TLS/SSL. If the server enforces encryption, connections can fail even when encrypt=false is set. Use one of the following approaches.

Add the appropriate encryption properties for your driver. For Microsoft SQL Server JDBC, for example:

  • As a connection property: encrypt=true
  • If you use a self-signed cert during setup: trustServerCertificate=true
  • Or in a JDBC URL:
jdbc:sqlserver://db.host:1433;databaseName=MyCompanyDB;encrypt=true;trustServerCertificate=true

For production, install a trusted certificate on the database server and omit trustServerCertificate=true. With trusted certs, the URL typically uses encrypt=true without additional trust flags.

Alternative: allow unencrypted connections

This is a less secure option. If your environment requires unencrypted connections, you must configure your database server to allow them. This is not recommended for production.

Checklist

  1. SQL Server JDBC: verify databaseName uses the exact case.
  2. Generic JDBC: if connections fail with SSL/TLS messages, enable encryption in the connection and/or on the server.
  3. Test the connection after changes.

Examples

SQL Server JDBC

Driver Class: com.microsoft.sqlserver.jdbc.SQLServerDriver

  • URL style:
    • jdbc:sqlserver://db.host:1433;databaseName=MyCompanyDB;encrypt=true
  • Properties style:
    • user=appuser
    • password=********
    • databaseName=MyCompanyDB
    • encrypt=true
    • trustServerCertificate=true (optional, for self-signed during setup only)

Generic JDBC

Use the equivalent encryption properties for your driver or vendor:

  • SQL Server: encrypt=true, optional trustServerCertificate=true
  • PostgreSQL: sslmode=require (or verify-full with a proper CA)
  • MySQL/MariaDB: useSSL=true (and requireSSL=true when enforcing)
  • Oracle: configure ssl_server_dn_match and the wallet or truststore as required

Driver property names differ by vendor. Consult your database's JDBC documentation for exact options.

Enabling encryption on SQL Server (quick tips)

  1. Install or select a server certificate (SQL Server Configuration Manager, then SQL Server Network Configuration, Protocols, Certificate).
  2. Optionally set Force Encryption to Yes (Flags tab), then restart the SQL Server service.
  3. Update your Informer Datasource properties or URL to include encrypt=true (and trustServerCertificate=true only for initial or self-signed setups).

Windows domain authentication for MS SQL

A matching version of the MS SQL JDBC auth.dll is required for Datasource connections using Windows domain authentication, as opposed to local SQL accounts. From the Datasource connection details, check whether integratedSecurity has been set to true. If it has, see Configuring an MSSQL Datasource to use Windows Authentication for remediation steps.

Also available through the REST API
Everything on this page is built on Informer's public REST API, the same one the product uses, so your scripts and integrations can do it too. Developer reference: Datasources.