Пакет SDK для Java для Центра Интернета вещей Azure, подключение устройств X.509, мультиплексированных через одно соединение AMQP

Я автоматически подготовил кучу устройств IoT через Azure IoT DPS. Устройства зарегистрированы в моем Центре Интернета вещей. Все устройства имеют сертификат аутентификации X.509.

Теперь я хочу отправлять сообщения на устройства. Все сертификаты доступны, и я могу подключиться с помощью DeviceClient к устройству в концентраторе. Я использую этот метод пакета SDK для Azure IoT Java:

public static DeviceClient createFromSecurityProvider(String uri, String deviceId, SecurityProvider securityProvider, IotHubClientProtocol protocol) throws URISyntaxException, IOException

В качестве параметра требуется SecurityProviderX509Cert.

Однако каждый DeviceClient имеет собственное физическое соединение. Я хочу использовать мультиплексирование AMQP с помощью этого конструктора:

public DeviceClient(String connString, TransportClient transportClient) throws URISyntaxException

Это не работает с устройствами X.509. В строке подключения я использовал ключ общего доступа из моей политики общего доступа из концентратора, но получил исключение:

Неавторизовано: устройство "xxx" в IotHub "yyy" не имеет PrimaryKey или SecondaryKey

Я предполагаю, что это будет работать, только если я зарегистрирую устройство с симметричными ключами. Однако эти устройства не могут быть зарегистрированы автоматически через Azure DPS. Я могу регистрировать только устройства с X.509 или TPM.

Итак, как я могу соединить несколько устройств X.509 через одно соединение AMQPS?


person muelli    schedule 28.06.2018    source источник
comment
Каков тип аутентификации устройства в устройствах IoT: самоподписанный X.509 или подписанный X.509 CA?   -  person Michael Xu - MSFT    schedule 29.06.2018
comment
X.509 самоподписанный   -  person muelli    schedule 29.06.2018


Ответы (1)


Похоже, что пакет SDK для Центра Интернета вещей Azure для Java не поддерживает мультиплексирование для устройств X.509.

Вы можете опубликовать требование для этой функции на github (https://github.com/Azure/azure-iot-sdk-java/issues).

person Michael Xu - MSFT    schedule 03.07.2018
comment
Выполнено! Спасибо! - person muelli; 03.07.2018