Я не могу найти никаких инструкций о том, как подключить IoT-устройство к IoT Hub с помощью сертификата CA X.509 с C SDK. Пример для C # SDK можно найти по адресу https://docs.microsoft.com/en-us/azure/iot-hub/iot-hub-security-x509-get-started#register-x509-ca.-certificates-to-your-iot-hub. Самое близкое, что я могу найти для C-SDK, - это API https://docs.microsoft.com/en-us/azure/iot-hub/iot-c-sdk-ref/iothub-device-client-h/iothubdeviceclient-createfromdeviceauth, но не предоставил никаких документов о том, как его использовать.
Пример кода есть в , что, кажется, подразумевает, как это использовать. Но вызов функции IoTHubDeviceClient_CreateFromDeviceAuth () оставлен без комментариев.
Моя цель - иметь возможность подключать нисходящее устройство к IoT Hub с помощью X.509, при этом Edge настроен как прозрачный шлюз. Поскольку предоставление DPS для нисходящего устройства в настоящее время не поддерживается. нисходящее устройство может подключаться к Центру Интернета вещей только с использованием симметричного ключа, самозаверяющего сертификата X.509 или сертификата, подписанного ЦС X5.09. Симметричный ключ или самоподписанный ключ X.509 не подходят, поскольку для этого требуется строка подключения устройства, которую мы не можем предоставить в нашем двоичном файле IoT Device. Подход к сертификату, подписанному CA X.509, кажется, работает, поскольку все наши устройства могут предварительно загрузить сертификат, но я не могу найти ни одного документа, как его заархивировать.