无法连接到AWS IoT服务,MqttException - javax.net.ssl.SSLHandshakeException:收到致命警报:certificate_unknown

时间:2017-08-13 05:51:03

标签: java amazon-web-services client-certificates aws-iot

我正在尝试通过MQTT客户端使用TLS 1.2身份验证在我的设备和AWS IoT服务之间建立连接。根据AWS IoT文档,我将RootCA证书存储在密钥库中的JAVA_Home / jre / Lib / Security / CACerts中。我能够使用CreateKeysAndCertificateResult生成用于连接到AWS IoT服务的设备的证书和密钥。后来,我从PEM字符串创建了X.509证书,从keypair对象中的私钥字符串创建了RsaCrtKeySpec对象。我将其保存在密钥库中,并使用MQTT Client对象中的密钥库连接到AWS IoT。但是,connect()会抛出下面列出的异常。任何有关这方面的帮助将不胜感激。

Aug 11, 2017 10:49:18 AM 
com.amazonaws.services.iot.client.mqtt.AwsIotMqttConnectionListener 
onFailure
WARNING: Connect request failure
MqttException (0) - javax.net.ssl.SSLHandshakeException: Received fatal 
alert: certificate_unknown

2 个答案:

答案 0 :(得分:0)

尝试确保您的证书在IOT控制台中处于活动状态。在certificates>下actions> activate

enter image description here

答案 1 :(得分:0)

你可能错过了指出吗?

-Djavax.net.ssl.trustStore=yourtruststore 
-Djavax.net.ssl.trustStorePassword=password