Подготовка устройства Azure IoT

Я исследую возможности использования Azure IoT Hub для связи между программными клиентами и серверной частью. Программные клиенты должны действовать как устройства на языке концентраторов Интернета вещей.

Можно ли подготовить программных клиентов в качестве устройств с помощью службы подготовки устройств Центра Интернета вещей без предоставления каждому клиенту уникального идентификатора в модуле TPM или уникального сертификата X.509?

Мне не нужно аутентифицировать клиентов перед подготовкой, я просто хочу, чтобы каждый клиент мог безопасно обмениваться данными с центром Интернета вещей. После инициализации клиент должен быть однозначно идентифицируемым. В то время другие клиенты не должны иметь возможность выдавать себя за него.

На данный момент я считаю, что клиентское программное обеспечение должно иметь встроенный промежуточный сертификат, который он может использовать для подписи сертификата, который он создает, когда пытается предоставить себя.

Есть ли другие способы позволить клиенту-устройству концентратора Интернета вещей подготавливать себя без предварительного программирования SAS, токена или другого уникального идентификатора?


person RasmusW    schedule 20.03.2018    source источник


Ответы (2)


Использование HSM не требуется для использования службы подготовки устройств (источник: я руководитель службы поддержки). Если у всех ваших клиентов уже есть промежуточный сертификат, который они могут использовать для создания листового сертификата, и если все промежуточные сертификаты для всех ваших устройств имеют общего подписывающего лица, вы можете создать группу регистрации в службе подготовки, используя этот общий сертификат подписи и разрешите всем вашим устройствам подготовиться через эту группу регистрации.

Сервису подготовки не важно, какой объект является конечным корнем доверия для сертификатов, которые представляют ваши клиенты устройства, но вам нужно будет пройти этап подтверждения владения, чтобы показать, что у вас есть доступ к частной части сертификата подписи при использовании группа зачисления. Подтверждая владение сертификатом подписи в цепочке (не обязательно корневым, а только одним из промежуточных), вы подтверждаете, что у вас есть разрешение на создание конечных сертификатов для устройств, которые будут регистрироваться как часть эта группа зачисления.

person nberdy - MSFT    schedule 22.03.2018
comment
Спасибо за ответ. В итоге я создал инструмент C #, который может создать цепочку CA из корневых и промежуточных звеньев, а также сертификат проверки и сертификаты устройств. Я разместил его на странице github.com/rwatjen/AzureIoTDPSCertificates. - person RasmusW; 18.04.2018

Боюсь, ответ - НЕТ.

Чтобы подключить Azure IoT Hub, устройство (программный клиент) должно выбрать в качестве метода проверки подлинности либо ключи безопасности (связанные с токенами), либо x509 (сертификат).

Что касается службы подготовки устройств, вам потребуется выберите удостоверение на основе x509 или TPM для подготовки устройства.

Служба подготовки устройств - это вспомогательная служба для Центра Интернета вещей, которая обеспечивает мгновенное и автоматическое предоставление доступа к нужному концентратору Интернета вещей без вмешательства человека, позволяя клиентам предоставлять миллионы устройств безопасным и масштабируемым образом.

И сертификаты X.509, и токены SAS могут храниться в модуле безопасности оборудования, поэтому вам не нужно предварительно программировать SAS, токен или другой уникальный идентификатор в клиенте вашего устройства.

Для программного клиента, возможно, вы можете использовать программный TPM. Но я не уверен, что ваша платформа поддерживает программный TPM. Существует программный TPM, поддерживаемый ядром Windows 10 IoT.

person Rita Han    schedule 21.03.2018
comment
Я думал, что не имеет значения, откуда берется сертификат x509 клиента. Разве это не сработало бы, если бы он мог создать сертификат, подписанный промежуточным сертификатом, который, в свою очередь, был подписан корневым сертификатом службы подготовки устройств, - person RasmusW; 21.03.2018