Connecting Sisense to Amazon DocumentDB via generic JDBC [Linux]
Summary: In this guide, Ihor Yokhym provides a step-by-step process to connect Sisense to Amazon DocumentDB using a generic JDBC connection on Sisense's Linux editions. Key steps include whitelisting the Sisense instance, downloading the appropriate JDBC driver, and registering the connector in Sisense. The guide addresses common TLS-related connection reset errors by explaining how to configure the TLS settings correctly, either by setting 'tls=false' in non-TLS environments or ensuring 'tls=true' and 'tlsAllowInvalidHostnames=true' for TLS environments. This ensures a successful connection and avoids java.net.SocketException errors.
Introduction: Learn how to successfully connect Sisense to Amazon DocumentDB using a generic JDBC connection. This guide applies to Sisense Linux editions (both Cloud and On-Premises deployment models) and resolves common TLS-related connection reset errors.
Step-by-Step Guide:
Step 1: Whitelist the Sisense Instance
Before modifying any configurations in Sisense, verify that your Sisense instance IP address or network range is properly whitelisted in your AWS DocumentDB cluster's security groups. The default connection port is 27017.
Step 2: Download the driver
Get the JDBC Driver for Amazon DocumentDB from the Amazon website and Github:
Step 3: Register the connector in Sisense
2.1 Go to Admin > Server & Hardware > System Management > Configuration.
2.2 Scroll to the bottom and click Manage Connectors.
2.3 In the left pane, click +JDBC Connector and fill in:
Connector ID: [YOUR_NAME]
Display Name: [YOUR_NAME]
Class Name: software.amazon.documentdb.jdbc.DocumentDbDriver
Upload JAR File: upload jar file
Click Create.
Step 4: Use the Generic JDBC Connection String
Because of architectural differences, connecting via the native Sisense MongoDB connector can result in errors. Instead, connect using the generic AWS DocumentDB JDBC driver syntax.
JDBC Connection String Template
Step 5: Configure TLS Settings and Resolve Socket Exceptions
According to official AWS DocumentDB JDBC Driver documentation, the driver’s default behavior is tls=true.
If your DocumentDB configuration expects plain text, a protocol mismatch occurs: the JDBC driver attempts an encrypted SSL handshake with a database node expecting unencrypted packets. DocumentDB will abruptly drop the network socket, resulting in the following error:
To fix this, modify your connection string based on your database environment:
For Non-TLS Environments: Explicitly turn off TLS encryption by adding tls=false and completely removing the tlsAllowInvalidHostnames flag.
For TLS Environments: Ensure both tls=true and tlsAllowInvalidHostnames=true are active.
Code Type: JDBC Connection String Example (TLS Disabled)

[Screenshot: Generic JDBC connection setup window in the Sisense Data tab] Description: The image above illustrates where to input the customized DocumentDB JDBC connection string and credential details within the Sisense Data Connector UI.
Conclusion:
Successfully connecting Sisense to Amazon DocumentDB requires leveraging the generic JDBC driver framework rather than the native MongoDB connector. The most common pitfall is a TLS mismatch; explicitly declaring tls=false in your connection parameters will bypass the java.net.SocketException when working with unencrypted database nodes.
References/Related Content