aws / amazon-documentdb-jdbc-driver

Amazon DocumentDB JDBC driver to connect from BI tools and execute SQL Queries
Apache License 2.0
14 stars 14 forks source link

[BUG] java.security.KeyStoreException: KeychainStore not found - broken since v1.4.2 #573

Open germain0 opened 2 months ago

germain0 commented 2 months ago

Environment


Problem Description

  1. Steps to reproduce: Install Driver and try to test connection
  2. Expected behaviour: successful connection
  3. Actual behaviour:
  4. Error message/stack trace:
  5. 2024-07-24 22:17:43.262 - KeychainStore KeyStore not available java.security.NoSuchAlgorithmException: KeychainStore KeyStore not available at java.base/sun.security.jca.GetInstance.getInstance(Unknown Source) at java.base/java.security.Security.getImpl(Unknown Source) at java.base/java.security.KeyStore.getInstance(Unknown Source) at shadow.nl.altindag.ssl.util.KeyStoreUtils.createKeyStore(KeyStoreUtils.java:143) at shadow.nl.altindag.ssl.util.KeyStoreUtils.loadSystemKeyStores(KeyStoreUtils.java:210) at shadow.nl.altindag.ssl.util.TrustManagerUtils.createTrustManagerWithSystemTrustedCertificates(TrustManagerUtils.java:82) at shadow.nl.altindag.ssl.util.CertificateUtils.getSystemTrustedCertificates(CertificateUtils.java:224) at software.amazon.documentdb.jdbc.DocumentDbConnectionProperties.applyCertificateAuthorities(DocumentDbConnectionProperties.java:1402) at software.amazon.documentdb.jdbc.DocumentDbConnectionProperties.applyToSslSettings(DocumentDbConnectionProperties.java:1394) at shadow.com.mongodb.MongoClientSettings$Builder.applyToSslSettings(MongoClientSettings.java:322) at software.amazon.documentdb.jdbc.DocumentDbConnectionProperties.applyTlsSettings(DocumentDbConnectionProperties.java:1378) at software.amazon.documentdb.jdbc.DocumentDbConnectionProperties.buildMongoClientSettings(DocumentDbConnectionProperties.java:774) at software.amazon.documentdb.jdbc.DocumentDbConnectionProperties.buildMongoClientSettings(DocumentDbConnectionProperties.java:727) at software.amazon.documentdb.jdbc.DocumentDbConnectionProperties.createMongoClient(DocumentDbConnectionProperties.java:706) at software.amazon.documentdb.jdbc.DocumentDbConnection.initializeClients(DocumentDbConnection.java:282) at software.amazon.documentdb.jdbc.DocumentDbConnection.(DocumentDbConnection.java:92) at software.amazon.documentdb.jdbc.DocumentDbDriver.connect(DocumentDbDriver.java:94) at org.jkiss.dbeaver.model.impl.jdbc.JDBCConnectionOpener.run(JDBCConnectionOpener.java:109) at org.jkiss.dbeaver.model.impl.jdbc.JDBCConnectionOpener.run(JDBCConnectionOpener.java:83) at org.jkiss.dbeaver.model.impl.jdbc.JDBCDataSource.openConnection(JDBCDataSource.java:222) at org.jkiss.dbeaver.ext.generic.model.GenericDataSource.openConnection(GenericDataSource.java:160) at org.jkiss.dbeaver.model.impl.jdbc.JDBCExecutionContext.connect(JDBCExecutionContext.java:106) at org.jkiss.dbeaver.model.impl.jdbc.JDBCRemoteInstance.initializeMainContext(JDBCRemoteInstance.java:102) at org.jkiss.dbeaver.model.impl.jdbc.JDBCRemoteInstance.(JDBCRemoteInstance.java:61) at org.jkiss.dbeaver.model.impl.jdbc.JDBCDataSource.initializeRemoteInstance(JDBCDataSource.java:120) at org.jkiss.dbeaver.ext.generic.model.GenericDataSource.(GenericDataSource.java:125) at org.jkiss.dbeaver.ext.generic.model.meta.GenericMetaModel.createDataSourceImpl(GenericMetaModel.java:92) at org.jkiss.dbeaver.ext.generic.GenericDataSourceProvider.openDataSource(GenericDataSourceProvider.java:106) at org.jkiss.dbeaver.registry.DataSourceDescriptor.openDataSource(DataSourceDescriptor.java:1405) at org.jkiss.dbeaver.registry.DataSourceDescriptor.connect0(DataSourceDescriptor.java:1275) at org.jkiss.dbeaver.registry.DataSourceDescriptor.connect(DataSourceDescriptor.java:1060) at org.jkiss.dbeaver.runtime.jobs.ConnectJob.run(ConnectJob.java:78) at org.jkiss.dbeaver.runtime.jobs.ConnectionTestJob.run(ConnectionTestJob.java:103) at org.jkiss.dbeaver.model.runtime.AbstractJob.run(AbstractJob.java:117) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63)
  6. Any other details that can be helpful: jdbc:documentdb://xxxx.zzzz.docdb.amazonaws.com:27017/yyyyyy?tlsAllowInvalidHostnames=true&tlsCAFile=~/certificats/aws_document_db_global-bundle.pem

documentdb-jdbc-1.3.1-all.jar(success) documentdb-jdbc-1.4.1-all.jar (success) documentdb-jdbc-1.4.2-all.jar (fail) documentdb-jdbc-1.4.3-all.jar (fail) documentdb-jdbc-1.4.4-all.jar (fail) documentdb-jdbc-1.4.5-all.jar (fail)

Screenshots


JDBC log