[英]Azure IoT SDK - connection not accepted problem
I am using the Azure IoT SDK for C to try and provision a device on my hub on the Azure IoT Portal.
我已按照说明生成签名证书并将其添加到门户,如此处所述https://github.com/Azure/azure-iot-sdk-c/blob/master/tools/CACertificates/CACertificateOverview.md
当我使用我的所有更改运行示例代码 prov_dev_client_ll_sample.c 时,我不断收到以下授权错误。 我已经为运行 Debian 的 X86-64 芯片构建并运行了此代码,并且还为 ARM 芯片进行了交叉编译,两者都产生相同的错误。
在 Azure 门户上,我尝试创建一个关联证书的注册组,并尝试创建一个单独的注册,显式添加证书。 没有任何效果。 人们认为我的时钟可能已经过时了。 但是,当我运行date时,它看起来不错。
任何帮助将不胜感激。 我现在花了两天多的时间来解决这个问题。
Running provisioning appplication..
Provisioning API Version : 1.3.8
Iothub API Version: 1.3.8
Device Certificate Name File: Device_identity.txt
Device Certificate PEM File : Device_cert.pem
Device Private Key PEM File : Device_key.pem
Error: Time:Fri Jun 19 12:02:42 2020 File:/home/azure-iot-sdk-
c/provisioning_client/src/prov_transport_mqtt_common.c Func:mqtt_operation_complete_callback Line:208
Connection Not Accepted: 0x5: Not Authorized
Error: Time:Fri Jun 19 12:02:42 2020 File:/home/azure-iot-sdk-
c/provisioning_client/src/prov_transport_mqtt_common.c Func:mqtt_error_callback Line:139 MQTT
communication error
Error: Time:Fri Jun 19 12:02:42 2020 File:/home/azure-iot-sdk-
c/provisioning_client/src/prov_device_ll_client.c Func:on_transport_registration_data Line:771
Failure
retrieving data from the provisioning service
Failure encountered on registration PROV_DEVICE_RESULT_DEV_AUTH_ERROR
registration failed!
Press any enter to continue:
使用 X.509 证书将设备连接到 Azure IoT 集线器有两种不同的场景:
此示例向您展示如何在不使用 DPS 的情况下将设备直接连接到 IoT 中心: https://github.com/Azure/azure-iot-sdk-c/tree/master/iothub_client/samples/iothub_ll_client_x509_sample 。 该示例假定您使用https://github.com/Azure/azure-iot-sdk-c/blob/master/tools/CACertificates/CACertificateOverview.md中描述的脚本来生成您的密钥和证书。 有关详细信息,请参阅: https://docs.microsoft.com/en-us/azure/iot-hub/iot-hub-x509ca-overview 。
此示例(您尝试运行的示例)向您展示了如何使用 DPS 将您的设备注册到 IoT 中心: https://github.com/Azure/azure-iot-sdk-c/tree/master/provisioning_client/样本/prov_dev_client_sample 。 该示例使用模拟的硬件安全模块 (HSM) 来生成密钥和证书(而不是脚本)。 有关如何运行此示例的详细信息,请参阅https://docs.microsoft.com/azure/iot-dps/quick-create-simulated-device-x509 。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.