Диспетчер безопасности Azure IoT Edge
Область применения: IoT Edge 1.1
Внимание
Дата окончания поддержки IoT Edge 1.1 была 13 декабря 2022 г. Чтобы получить сведения о поддержке определенного продукта, службы, технологии или API, перейдите на страницу Политика жизненного цикла поддержки Майкрософт. Дополнительные сведения об обновлении до последней версии IoT Edge см. в разделе "Обновление IoT Edge".
Диспетчер безопасности Azure IoT Edge — это хорошо ограниченное ядро обеспечения безопасности для защиты устройства IoT Edge и всех его компонентов путем абстрагирования защищенного кремниевого оборудования. Диспетчер безопасности является основным средством усиления безопасности и обеспечивает интеграцию технологий с изготовителями оборудования (поставщиками вычислительной техники).
Диспетчер безопасности абстрагирует безопасное оборудование кремния на устройстве IoT Edge.
Диспетчер безопасности IoT Edge направлен на защиту целостности устройства IoT Edge и всех встроенных программных операций. Диспетчер безопасности передает базовый корень доверия оборудования (если доступно), чтобы выполнить начальную загрузку среды выполнения IoT Edge и следить за выполняемыми операциями. По сути, диспетчер безопасности IoT Edge — это программное обеспечение, работающее вместе с безопасным оборудованием с микросхемами (где это доступно) и позволяющее обеспечить максимально возможные гарантии безопасности.
В задачи диспетчера безопасности IoT Edge входят (это не исчерпывающий список):
- Начальная загрузка устройства Azure IoT Edge.
- Управление доступом к аппаратному корню доверия устройства через нотарионные службы.
- Мониторинг целостности операций IoT Edge во время выполнения.
- Получает делегирование доверия из аппаратного модуля безопасности (HSM)
- Подготовьте удостоверение устройства и управляйте переходом доверия, если это применимо.
- Размещение и защита компонентов облачных служб для устройства, например службы подготовки устройств.
- Подготовка модулей IoT Edge с уникальными удостоверениями.
Диспетчер безопасности IoT Edge состоит из трех компонентов:
- Управляющая программа безопасности IoT Edge
- Уровень абстракции платформы аппаратного модуля безопасности (HSM PAL)
- Аппаратный корень доверия или HSM (необязательно, но настоятельно рекомендуется)
Управляющая программа безопасности IoT Edge
Управляющая программа безопасности IoT Edge отвечает за логические операции безопасности диспетчера безопасности. Она представляет значительную часть доверенной вычислительной базы устройства IoT Edge.
Принципы дизайна
IoT Edge следует двум основным принципам: максимальной целостности операций и минимизации больших двоичных объектов и оттока.
Максимальное увеличение операционной целостности
Управляющая программа безопасности IoT Edge обеспечивает самый высокий уровень целостности в рамках защиты любого корня доверия оборудования. При правильной интеграции корень доверия оборудования проверяет и отслеживает управляющую программу безопасности в статическом состоянии и во время выполнения, чтобы противостоять незаконному изменению. Вредоносный физический доступ к устройствам всегда является угрозой в IoT. Корневой каталог доверия оборудования играет важную роль в защите целостности устройства IoT Edge. Корень доверия оборудования представлен в двух вариантах:
- Элементы обеспечения безопасности конфиденциальных данных, таких как секреты и криптографические ключи.
- Безопасные анклавы для защиты секретов, таких как ключи, и конфиденциальные рабочие нагрузки, такие как конфиденциальные модели машинного обучения и операции измерения.
Есть два типа сред выполнения для использования корня доверия оборудования:
- стандартная или расширенная среда выполнения (REE), которая использует безопасные элементы для защиты конфиденциальной информации;
- доверенная среда выполнения (TEE), которая использует безопасные внутренние зоны для защиты конфиденциальной информации и обеспечения защиты выполнения программного обеспечения.
Для устройств, использующих безопасные анклава в качестве аппаратного корня доверия, конфиденциальная логика в управляющей программе безопасности IoT Edge должна находиться в анклаве. Неконфиденциальные части управляющей программы безопасности могут находиться за пределами TEE. Во всех случаях настоятельно рекомендуется, чтобы оригинальные производители дизайна (ODM) и оригинальные производители оборудования (OEM) распространяли доверие от HSM, чтобы измерять и защищать целостность управляющей программы безопасности IoT Edge при загрузке и среде выполнения.
Минимизация раздувания и обновления
Другой основной принцип управляющей программы безопасности IoT Edge заключается в минимизации обновлений. Для высшего уровня доверия управляющая программа безопасности IoT Edge может тесно соединяться с корнем доверия оборудования устройства и работать как собственный код. В таких случаях обычно обновляется программное обеспечение IoT Edge с помощью аппаратного корня путей безопасного обновления доверия, а не механизмов обновления операционной системы, которые могут быть сложными. Продление безопасности рекомендуется для устройств Интернета вещей, но чрезмерные требования к обновлению или большие полезные данные обновления могут расширить область угроз во многих отношениях. Например, вам может потребоваться пропустить некоторые обновления, чтобы максимально повысить доступность устройств. Таким образом, дизайн управляющей программы безопасности IoT Edge является кратким, чтобы обеспечить хорошо изолированную базу надежных вычислений небольшого размера, чтобы поощрять частые обновления.
Архитектура
Управляющая программа безопасности IoT Edge поддерживает любую доступную технологию корня доверия оборудования для повышения безопасности. Она также поддерживает раздельные операции между стандартной или расширенной средой выполнения и доверенной средой выполнения (TEE), если аппаратные технологии предлагают среды TEE. Специфические для конкретной роли интерфейсы задействуют основные компоненты IoT Edge для обеспечения целостности устройства IoT Edge и его операций.
Облачный интерфейс
Облачный интерфейс обеспечивает доступ к облачным службам, которые дополняют безопасность устройств. Например, этот интерфейс позволяет получить доступ к службе подготовки устройств для управления жизненным циклом удостоверений устройств.
API управления
API управления вызывается агентом IoT Edge при создании или запуске, остановке и удалении модуля IoT Edge. Управляющая программа безопасности сохраняет "регистрации" для всех активных модулей. Эти регистрации сопоставляют удостоверение модуля с некоторыми свойствами модуля. Например, эти свойства модуля включают идентификатор процесса (pid) процесса, выполняемого в контейнере, и хэш содержимого контейнера Docker.
Эти свойства использует интерфейс API рабочей нагрузки (описанный ниже) для проверки того, что вызывающий агент уполномочен выполнять действия.
API управления — это привилегированный API, вызываемый только из агента IoT Edge. Так как управляющая программа безопасности IoT Edge обеспечивает начальную загрузку и запускает агент IoT Edge, она подтверждает, что агент IoT Edge не был незаконно изменен, а затем может создать неявную регистрацию для агента IoT Edge. Тот же процесс аттестации, который применяет API рабочей нагрузки, используется для предоставления доступа к API управления только для агента IoT Edge.
API контейнера
API контейнера взаимодействует с системой контейнеров, используемой для управления модулями, например Moby или Docker.
API рабочей нагрузки
Интерфейс API рабочей нагрузки доступен для всех модулей. Он предоставляет подтверждение подлинности в форме подписанного токена с корнем HSM или в форме сертификата X509 и соответствующего пакета доверия модулю. Пакет доверия содержит сертификаты ЦС для всех других серверов, которым должны доверять модули.
Управляющая программа безопасности IoT Edge использует процесс аттестации для защиты этого API. Когда модуль вызывает этот API, управляющая программа безопасности пытается найти регистрацию для соответствующего идентификатора. В случае обнаружения она использует свойства регистрации для измерения модуля. Если результат процесса измерения совпадает с регистрацией, создается подтверждение подлинности. Соответствующие сертификаты ЦС (пакет доверия) возвращаются в модуль. Модуль использует этот сертификат для подключения к Центру Интернета вещей, другим модулям или запуска сервера. Когда срок действия подписанного токена или сертификата истекает, модуль должен запросить новый сертификат.
Интеграция и обслуживание
Корпорация Майкрософт поддерживает основную базу кода для управляющей программы безопасности IoT Edge на GitHub.
Установка и обновления
Установкой и обновлением управляющей программы безопасности IoT Edge управляет система управления пакетами операционной системы. Устройства IoT Edge с корнем доверия оборудования должны обеспечить дополнительное улучшение целостности управляющей программы, управляя жизненным циклом устройства с помощью систем управления загрузкой и обновлением. Изготовители устройств должны исследовать эти возможности на основе соответствующих возможностей устройства.
Управление версиями
Среда выполнения IoT Edge отслеживает и сообщает версию управляющей программы безопасности IoT Edge. Версия сообщается как атрибут среда выполнения.платформа.версия передаваемого свойства модуля агента IoT Edge.
Аппаратный модуль безопасности
Уровень абстракции платформы аппаратного модуля безопасности (HSM PAL) абстрагирует все корневую часть оборудования доверия, чтобы изолировать разработчика или пользователя IoT Edge от их сложностей. Он включает в себя комбинацию программных интерфейсов (API) и процедур взаимодействия между доменами, например связь между стандартной средой выполнения и безопасной внутренней зоной. Фактическая реализация уровня абстракции платформы HSM зависит от конкретного используемого защищенного оборудования. Его существование позволяет использовать практически любое безопасное оборудование с микросхемами.
Корень доверия надежного кремниевого оборудования
Надежное кремниевое оборудование необходимо для закрепления доверия внутри аппаратного устройства IoT Edge. Существует различные защищенные микросхемы, такие как доверенный платформенный модуль (TPM), встроенный безопасный элемент (eSE), Arm TrustZone, Intel SGX и специальные технологии защищенных микросхем. Использование корня доверия надежного кремниевого оборудования в устройствах рекомендуется из-за угроз, связанных с физической доступностью устройств Интернета вещей.
Цель диспетчера безопасности IoT Edge — определить и изолировать компоненты, которые повышают безопасность и обеспечивают целостность платформы Azure IoT Edge. Третьи стороны, например изготовители, должны применять пользовательские функции безопасности, доступные для оборудования их устройств.
Узнайте, как укрепить защиту диспетчера безопасности Интернета вещей Azure с помощью программного или виртуального доверенного платформенного модуля (TPM).
Создайте и подготовьте устройство IoT Edge с помощью виртуального доверенного платформенного модуля в Linux или Linux в Windows.
Следующие шаги
Дополнительные сведения о защите устройств IoT Edge см. в следующих записях блога: