Skip to main content
Announcements
Join us at Qlik Connect for 3 magical days of learning, networking,and inspiration! REGISTER TODAY and save!
cancel
Showing results for 
Search instead for 
Did you mean: 
Mrugesh
Contributor II
Contributor II

Connecting qliksense server instance fails with no trusted certificate found

Hi Team,

I am seeing an error every-time saying no trusted certificate. 

We are developing a java application using web socket to connect to qliksense server instance.

Below is the stack trace for reference seen while making a connection call:

javax.net.ssl.SSLHandshakeException: No trusted certificate found
at java.base/sun.security.ssl.Alert.createSSLException(Alert.java:131)
at java.base/sun.security.ssl.TransportContext.fatal(TransportContext.java:326)
at java.base/sun.security.ssl.TransportContext.fatal(TransportContext.java:269)
at java.base/sun.security.ssl.TransportContext.fatal(TransportContext.java:264)
at java.base/sun.security.ssl.CertificateMessage$T12CertificateConsumer.checkServerCerts(CertificateMessage.java:645)
at java.base/sun.security.ssl.CertificateMessage$T12CertificateConsumer.onCertificate(CertificateMessage.java:464)
at java.base/sun.security.ssl.CertificateMessage$T12CertificateConsumer.consume(CertificateMessage.java:360)
at java.base/sun.security.ssl.SSLHandshake.consume(SSLHandshake.java:392)
at java.base/sun.security.ssl.HandshakeContext.dispatch(HandshakeContext.java:444)
at java.base/sun.security.ssl.HandshakeContext.dispatch(HandshakeContext.java:422)
at java.base/sun.security.ssl.TransportContext.dispatch(TransportContext.java:183)
at java.base/sun.security.ssl.SSLTransport.decode(SSLTransport.java:164)
at java.base/sun.security.ssl.SSLSocketImpl.decode(SSLSocketImpl.java:1144)
at java.base/sun.security.ssl.SSLSocketImpl.readHandshakeRecord(SSLSocketImpl.java:1055)
at java.base/sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:395)
at java.base/sun.security.ssl.SSLSocketImpl.ensureNegotiated(SSLSocketImpl.java:709)
at java.base/sun.security.ssl.SSLSocketImpl$AppInputStream.read(SSLSocketImpl.java:792)
at java.base/java.io.InputStream.read(InputStream.java:205)
at org.java_websocket.client.WebSocketClient.run(WebSocketClient.java:505)
at java.base/java.lang.Thread.run(Thread.java:834)
Caused by: sun.security.validator.ValidatorException: No trusted certificate found
at java.base/sun.security.validator.SimpleValidator.buildTrustedChain(SimpleValidator.java:411)
at java.base/sun.security.validator.SimpleValidator.engineValidate(SimpleValidator.java:135)
at java.base/sun.security.validator.Validator.validate(Validator.java:264)
at java.base/sun.security.ssl.X509TrustManagerImpl.validate(X509TrustManagerImpl.java:313)
at java.base/sun.security.ssl.X509TrustManagerImpl.checkTrusted(X509TrustManagerImpl.java:222)
at java.base/sun.security.ssl.X509TrustManagerImpl.checkServerTrusted(X509TrustManagerImpl.java:129)
at java.base/sun.security.ssl.CertificateMessage$T12CertificateConsumer.checkServerCerts(CertificateMessage.java:629)
... 15 more
Labels (2)
2 Replies
Jack_Guo
Support
Support

Mrugesh
Contributor II
Contributor II
Author

Thanks Jack for suggestion. However I don't think it is using. machine keystore. Tried with importing pem certificate in to the keystore.

FYI...

qliksense server is installed in aws environment. We are following same as below example :

https://github.com/StevenJDH/Qlik-Sense-Java-Examples/blob/master/src/main/java/Shared/QlikAuthCerti...

 

As part of certificate based authentication,

1. Generated the windows format certificates from QMC portal

2. Importing in application , client.pfx and root.cer certificates.

3. Using websockets for communication on engine port 4747

4. Initiate the request.

When I took a look the certificate chain from qliksense server, I  dont see any matching  certificate against the ones which have been imported.

Outcome after doing that is No Trusted Certificate Found.