Модули защиты

Модуль защиты — это надстройка, которая включает микросхему Azure Sphere и физически подключается к порту на "устройстве brownfield", т. е. существующем устройстве, которое, возможно, уже используется.

С помощью модуля защиты можно добавить безопасные возможности Интернета вещей к оборудованию, которое либо не поддерживает подключение к Интернету, либо не поддерживает его безопасно. Вкратце, модуль защиты позволяет реализовать безопасное подключение на существующих устройствах, не предоставляя этим устройствам доступ к Интернету. Так как это устройство Azure Sphere, доступны все функции безопасности и подключения Azure Sphere: все данные шифруются, обновления ОС и приложений доставляются безопасно, а проверка подлинности гарантирует, что модуль будет взаимодействовать только с доверенными узлами.

Вот как работает модуль защиты:

  • Модуль защиты подключается к устройству brownfield, как описано в разделе "Подключение " этого раздела. Само устройство brownfield не подключено к сети.

  • ОС Azure Sphere выполняется в модуле защиты вместе с пользовательским высокоуровневим приложением и любыми другими приложениями Azure Sphere , необходимыми для вашего сценария.

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

  • Устройство brownfield взаимодействует с модулем защиты, который может отвечать, выполнив локальное действие или создав отчет о присутствии в облаке, например Azure IoT Central.

Вы можете приобрести модули защиты у поставщика и дополнительно настроить их для своего сценария использования или создать собственный модуль защиты, возможно, работая с партнером по оборудованию. Сведения о поставщиках оборудования см. на веб-сайте Azure Sphere.

Используется для модуля защиты

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

  • Сбор данных с локального устройства, их обработка и безопасная передача в облачную конечную точку
  • Отправка данных в несколько конечных точек при условии, что они могут выполнять проверку подлинности каждой конечной точки.
  • Сбор дополнительных данных, недоступных с устройства brownfield; Например, датчики в модуле защиты могут предоставлять данные о среде для использования с операционными данными с устройства brownfield.
  • Сохранение данных с локального устройства на случай потери подключения

Репозиторий примеров Azure Sphere содержит два примера, демонстрирующих использование устройства Azure Sphere в качестве модуля защиты:

  • С устройства в облако показано, как устройство Azure Sphere можно использовать для сбора данных, обеспечивая безопасный доступ к Интернету для устройства, подключенного к нему через последовательный интерфейс.
  • В службах частной сети показано, как устройство Azure Sphere может обеспечить безопасный доступ к Интернету для защищенного устройства, подключенного к нему через интерфейс TCP/IP.

Связь

Существует несколько поддерживаемых механизмов подключения между модулем защиты и сетью, а также между модулем защиты и устройством. Общие сведения о решениях для подключения Azure Sphere см. в обзоре подключения и требованиях к сети.

Высокоуровневые приложения модуля защиты обмениваются данными с сетью, включая службу безопасности Azure Sphere и другие облачные службы, а подчиненные — с устройством с подсети:

  • Для вышестоящих подключений между модулем защиты и сетью можно использовать Ethernet, Wi-Fi или сотовая связь.

  • Для нижестоящих подключений между модулем защиты и оборудованием для защиты можно использовать следующее:

    • Любой последовательный интерфейс, например UART, RS-485 или SPI, который предоставляет устройство brownfield
    • Частная сеть Ethernet, которая не предоставляет устройство brownfield общедоступной сети.
    • Беспроводная связь, например Bluetooth или ZigBee

Разработка и развертывание приложений

Разработка и развертывание приложения для модуля защиты не отличается от разработки и развертывания приложения для любого другого устройства Azure Sphere. Дополнительные сведения см. в обзоре приложений Azure Sphere и основных сведений о развертывании. Как и на любом устройстве Azure Sphere, модуль защиты должен иметь по крайней мере одно высокоуровневые приложения Azure Sphere, а также приложения, поддерживающие режим реального времени.

Вам потребуется доступ к UART службы, который является основным интерфейсом программирования и отладки между MT3620 и средой разработки, работающей на главном компьютере. Если вы создаете собственный модуль защиты, необходимо убедиться, что сигналы UART службы предоставляются и что вы поддерживаете способ взаимодействия со службой UART как в самом модуле защиты, так и на отдельном оборудовании. При покупке модулей у поставщика поставщик должен предоставить решение, которое включает это подключение.

Если поставщик или другая третья сторона создаст приложение, может потребоваться предоставить доступ к клиенту Azure Sphere, чтобы разработчик приложения может загрузить и протестировать приложение и создать развертывание.

Высокоуровневые приложения

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

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

Высокоуровневые приложения, выполняемые в модуле защиты, отвечают за следующие задачи:

  • Установка и обслуживание подключений к оборудованию в бытовом оборудовании
  • Установка и обслуживание подключения к Интернету, включая службу безопасности Azure Sphere и другие облачные службы
  • Обработка данных, полученных с устройства brownfield— распаковка и хранение данных при необходимости и взаимодействие с узлами Интернета соответствующим образом
  • Обработка данных, полученных от интернет-узла, распаковка и хранение данных при необходимости и взаимодействие с оборудованием в качестве необходимого

Данные, отправляемые вышестоящим сервером, могут включать отчеты об ошибках, операционные параметры или общую телеметрию. Azure Sphere обеспечивает шифрование всех таких данных. Приложение может подключаться к веб-службам и использовать взаимную проверку подлинности для таких подключений.

Данные, отправляемые нижестоящим сервером, могут включать в себя обновленное программное обеспечение или изменения параметров или параметров для устройства. Чтобы избежать потенциальных нарушений безопасности, приложение должно проверить входящие данные перед их передачей на устройство с более удаленным расположением.

Рекомендации по приложениям

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

Периферийные устройства

Как и другие устройства Azure Sphere, модули защиты отличаются периферийными устройствами, которые они предоставляют. Выберите модуль защиты, который предоставляет возможности подключения и проверки, необходимые для вашего сценария.

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

Требования к хранилищу

Azure Sphere имеет ограниченное хранилище, поэтому тщательно продумайте, какой объем памяти требуется для приложений и данных. Дополнительные сведения см. в разделе "Доступная память".

При отправке данных из облака на устройство brownfield убедитесь, что модуль защиты имеет достаточно места для хранения данных. Может потребоваться отправить данные фрагментами, как показано в примере HTTPS_Curl_Multi в репозитории примеров Azure Sphere на GitHub.

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

Энергопотребление

Существует множество приложений, в которых модуль защиты большую часть времени неактивен. Например, рассмотрим устройство Azure Sphere, которое каждый час собирает данные из сети датчиков и отправляет эти данные в облако— операция, которая может занять одну-две минуты. В этом случае большая часть потребляемой устройством мощности не используется.

Вы можете значительно снизить энергопотребление и, таким образом, увеличить время работы батареи, поместив устройство в состояние "Отключено", когда оно неактивно, или задав профиль питания. Дополнительные сведения см. в разделе "Управление состоянием Power Down " и "Настройка профилей питания ".