Поделиться через


Руководство пользователя центра обновления устройств

Портал Центра обновления устройств предоставляет изготовителям оборудования способ:

  • Публикация пользовательских пакетов OEM (OCP) в клиентский компонент Центра обновления Windows Cloud
  • Тестирование пользовательских пакетов OEM на устройствах на основе колец полета
  • Обновление ос для тестовой ОС на устройствах на основе колец тестирования

Предварительные требования для Центра обновления устройств

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

  • Необходимо иметь сертификат подписи кода расширенной проверки (EV). Пожалуйста, проверка, есть ли у вашей компании сертификат подписи кода. Если у вашей компании уже есть сертификат, он должен быть доступен. Сертификат потребуется для подписи файлов. Если у вашей компании нет сертификата, вам потребуется приобрести его в процессе регистрации.

  • Вам потребуется войти в качестве глобального администратора в Azure Active Directory вашей организации. Если вы не знаете, есть ли в вашей организации Azure Active Directory, обратитесь в ИТ-отдел. Если в вашей организации нет Azure Active Directory, вы сможете создать ее бесплатно.

  • Вы должны иметь право подписывать юридические соглашения от имени вашей организации.

Шаг 1. Настройка

Регистрация

  1. Создайте учетную запись Центра разработки оборудования Windows для доступа к центру обновления устройств (DUC). Вам потребуется:

    • Сертификат подписи кода расширенной проверки (EV): используется для проверки CAB-файла обновления, отправленного на обновления.
    • Учетная запись Azure Active Directory (AAD) с правами администратора: используется для подписания юридических соглашений.

    Подробные инструкции о процессе регистрации см. в разделе Регистрация в программе оборудования.

  2. Регистрация в службах Windows 10 IoT Базовая

  3. Войдите в Центр разработки оборудования с ролью администратора и укажите роли для других пользователей в организации. Вам потребуется:

    • Роль "Отправитель драйверов" для отправки обновлений
    • Роль владельца метки доставки для тестирования обновлений

    Подробные инструкции см. в разделе Изменение роли пользователя .

Установка инструментов

  1. Комплект средств для развертывания и оценки Windows (Windows ADK)
  2. Надстройки ADK для IoT Core
  3. Пакеты Windows 10 IoT Базовая
  4. Получите BSP для вашей платформы у поставщика кремния. См. Windows 10 IoT Базовая BSP.

Настройка среды

  1. Запустите IoTCorePShell (запускает командную строку с повышенными привилегиями) и создайте или откройте рабочую область.

    new-ws C:\MyWorkspace <oemname> <arch>
    (or)
    open-ws C:\MyWorkspace
    

    Обратите внимание, что начальная версия пользовательского пакета OEM имеет значение 10.0.0.0.

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

    <!--Specify the retail signing certificate details, Format given below -->
    <RetailSignToolParam>/s my /i "Issuer" /n "Subject" /ac "C:\CrossCertRoot.cer" /fd SHA256</RetailSignToolParam>
    <!--Specify the ev signing certificate details, Format given below -->
    <EVSignToolParam>/s my /i "Issuer" /n "Subject" /fd SHA256</EVSignToolParam>
    
    • Обновите "Издатель", "Субъект" в соответствии со сведениями о сертификате.
    • CrossCertRoot.cer соответствует корневому каталогу сертификата для перекрестной подписи, опубликованному в списке перекрестных сертификатов.

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

Шаг 2. Создание нового продукта

  1. Создание нового продукта с помощью Add-IoTProduct

    Add-IoTProduct <productname> <bspname>
    (or) newproduct <productname> <bspname>
    
  2. При появлении запроса укажите сведения SMBIOS. Для Qualcomm этот файл хранится в файле SMBIOS.cfg. Для других платформ необходимо обновить BIOS, чтобы отразить эти значения.

    Обязательные поля SMBIOS см. в разделе Требования к лицензиям OEM . В обновлении используются следующие ключевые поля:

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

    • Продукт базовой платы, который на портале обновления называется идентификатором варианта оборудования.

    Обратите внимание, что IoTDeviceModel_<productname>.xml также создается. Он используется для регистрации модели устройства на следующем шаге.

    Снимок экрана: новый продукт PowerShell

Шаг 3. Регистрация модели устройства в центре обновления устройств

  1. На портале Центра обновления устройств выберите Новая модель устройства.

    Новая модель устройства — выберите

  2. Просмотрите файлы и выберите в IoTDeviceModel_<productname>.xml рабочей области.

    Новая модель устройства — рабочая область

  3. Подтвердите спецификацию модели устройства и нажмите кнопку Отправить.

    Новая модель устройства — отправка

    В таблицу модели устройств будет добавлена новая запись модели устройства. Вы также увидите ссылку для скачивания в этой таблице.

  4. Скачивание ZIP-файла (CUSConfig.zip)

Создание базового образа для устройства

  1. В IoTCoreShell импортируйте файл конфигурации с помощью import-IoTDUCConfig.

    Import-IoTDUCConfig <productname> "C:\Downloads\CUSConfig.zip"
    (or) importcfg <productname> "C:\Downloads\CUSConfig.zip"
    

    При этом также будут изменены файлы OEMInputXML для включения необходимых FM-файлов и идентификаторов компонентов. При этом также будет удалена IOT_GENERIC_POP функция, если она имеется.

    Импорт файла конфигурации

  2. Подписывание всех необходимых двоичных файлов с помощью сертификата подписи кода с помощью Add-IoTSignature и Redo-IoTCabSignature

    # enable retail signing
    Set-IoTRetailSign On
    (or) retailsign On
    # sign all binaries in the workspace
    Add-IoTSignature C:\MyWorkspace *.sys,*.dll,*.exe
    (or) signbinaries C:\MyWorkspace *.sys,*.dll,*.exe
    # re-sign prebuilt bsp cabs if applicable
    Redo-IoTCabSignature <srcbspdir> <dstbspdir>
    
  3. Создание базового образа с помощью приведенных ниже команд

    # build all packages
    buildpkg All
    # build the image
    buildimage <productname> <retail/test>
    # build recovery image, if recovery mechanism needed
    buildrecovery <productname> <retail/test>
    

    Это позволяет получить базовый образ с пользовательским пакетом OEM версии 10.0.0.0.

  4. Проверьте этот образ на устройстве.

Шаг 4. Публикация обновлений

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

Создание пакетов обновления

  1. Сначала обновите номер версии с помощью Set-IoTCabVersion

    Set-IoTCabVersion <a.b.c.d>
    (or) setversion <a.b.c.d>
    

    Убедитесь, что a.b.c.d имеет более высокую версию, чем предыдущий набор версий.

  2. Если доступны новые версии драйверов BSP, скопируйте их в папку BSP, настроенную ранее (например, C:\BSP). Кроме того, можно сохранить все обновленные драйверы в другой папке, например, C:\BSPv2 и обновить XML рабочей области.

  3. При наличии новой версии существующего appx создайте appx с тем же именем. Обратите внимание, что идентификатор в созданном customizations.xml будет таким же, как и в предыдущей версии.

  4. Если доступны обновленные версии драйверов, обновите двоичные файлы и XML-файл упаковки.

  5. Обновите любое другое содержимое пакета, если это применимо.

  6. Подписывание всех необходимых двоичных файлов с помощью сертификата подписи кода с помощью Add-IoTSignature и Redo-IoTCabSignature

    # enable retail signing
    Set-IoTRetailSign On
    (or) retailsign On
    # sign all binaries in the workspace
    Add-IoTSignature C:\MyWorkspace *.sys,*.dll,*.exe
    (or) signbinaries C:\MyWorkspace *.sys,*.dll,*.exe
    # re-sign prebuilt bsp cabs if applicable
    Redo-IoTCabSignature <srcbspdir> <dstbspdir>
    
  7. Создание образа обновления с помощью приведенных ниже команд

    # build all packages
    buildpkg All
    # build the image
    buildimage <productname> <retail/test>
    # build recovery image, if recovery mechanism needed
    buildrecovery <productname> <retail/test>
    

    Это дает вам базовый образ с версией <пользовательского пакета OEM a.b.c.d>.

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

  9. После успешной проверки сборки обновления экспортируйте необходимые пакеты с помощью Export-IoTDUCCab.

    Export-IoTDUCCab <productname> <retail/test>
    (or) exportpkgs <productname> <retail/test>
    

    <productname>_OCP_<version>.cab будет создан в папке <workspacedir>\Build\<arch>\<productname>\<config>\<version>\ вместе с <productname>_OCP_pkgver.txt файлом со списком включенных cab-файлов и их версий. Этот cab-файл будет подписан с помощью сертификата EV, настроенного в XML-файле рабочей области.

Публикация обновлений

  1. На портале Центра обновления устройств выберите модель устройства в таблице Модель устройства.

  2. Выберите Обновить отправку>Новый пользовательский пакет.

    Новый пользовательский пакет

  3. Просмотрите файлы и выберите в <productname>_OCP_<version>.cab рабочей области.

    Новый пользовательский пакет — выберите

  4. Подтвердите сведения о версии выпуска и нажмите кнопку Опубликовать.

    Отправка выпуска проходит процесс, состоящий из следующих:

    • Проверка: проверка содержимого отправленного пакета на подлинность и правильность

    • Sign : подписывает cabs с помощью сертификата Майкрософт для публикации в клиентский компонент Центра обновления Windows

    • Публикация: фактический шаг публикации в клиентский компонент Центра обновления Windows

    • Finalize: завершение процесса публикации

  5. Вы можете проверка состояние процесса публикации, щелкнув ссылку Состояние. Этот процесс занимает некоторое время.

    Новый пользовательский пакет — состояние

Шаг 5. Нацеливание обновлений

После успешной публикации обновлений можно управлять процессом доставки, указав правила нацеливания.

  1. Выберите Update flighting (Обновление тестовой версии ) и New Flight (Создать тестовый ресурс).

    Новый рейс

  2. В диалоговом окне Новый тестовый тест:

    Диалоговое окно

    а. Укажите круг (Preview / / EarlyAdopterGeneralAvailability), например Предварительный просмотр. Обратите внимание, что xml-файл, скачанный и включенный в образ, по умолчанию задает значение GeneralAvailability .

    • Круг предварительной версии : обновляет ограниченный набор устройств, в основном в лаборатории.

    • Круг EarlyAdopter : обновляет умеренное количество устройств в пользовательской среде, включая локальные устройства.

    • Круг GeneralAvailability : обновляет каждое устройство на рынке

    b. Выберите поле Версия ОС, если вы хотите указать новую версию ОС, а затем выберите требуемую версию ОС.

    c. Выберите поле Версия пользовательского пакета OEM, если вы хотите указать новую версию пользовательского пакета OEM, а затем выберите требуемую версию пользовательского пакета OEM, например a.b.c.d.

    d. Щелкните Далее.

Примечание

Сначала обновите версию ОС до atleast 10.0.17763.615, чтобы поддерживать подписывание SHA-2. Дополнительные сведения см. в разделе Прекращение поддержки SHA1 для IoT Core ниже.

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

    • Проверка: проверка правильности правил нацеливания

    • Нацеливание: фактические конфигурации, заданные в клиентский компонент Центра обновления Windows

    • Finalize: завершение процесса нацеливания

  2. Вы можете проверка состояние процесса публикации, щелкнув ссылку Состояние.

    Состояние нового рейса

    На этом этапе система клиентский компонент Центра обновления Windows настроена на доставку необходимых пакетов обновления на устройство. Для распространения параметров может потребоваться несколько часов.

Шаг 6. Проверка обновлений на устройстве

Теперь, когда обновления доступны в Центре обновления Windows, вы можете проверить их на устройстве. Круги предоставляются для включения поэтапного развертывания обновлений, начиная с предварительной версии, затем EarlyAdopter и GeneralAvailability.

  1. Настройте устройство для предварительного просмотра круга. Это можно задать с помощью API Azure DM или API обновления UWP.

  2. Разрешите устройству проверять наличие обновлений, устройство обнаружит опубликованное обновление, скачит и установит его автоматически (на основе настроенных политик обновления).

    Этот процесс может занять не более 24 часов в зависимости от времени сканирования и параметров времени активности.

Устаревание SHA1 для IoT Core

Прекращена поддержка SHA1 для Windows 10 IoT Базовая ОС, и включена поддержка только SHA-2 начиная с обновления Windows 10 IoTCore версии 1809 за июль (10.0.17763.615). Начиная с ноября 2019 г. все пользовательские пакеты OEM будут подписаны только сигнатурами SHA-2, и все устройства должны быть сначала обновлены до Windows 10 1809 июльского обновления (10.0.17763.615) или более поздней версии , чтобы иметь возможность ориентироваться на пользовательские пакеты OEM, подписанные SHA-2.

Примечание

Подписанные обновления SHA-2 не будут установлены в версиях ОС старше 10.0.17763.611. Рекомендуется сначала обновить ОС устройства до версии этой версии, а затем выбрать обновления пользовательского пакета oem.

Для устройств под управлением Windows 10 IoTCore версии 1803 потребуется выполнить обновление до Windows 10 IoTCore версии 1803 с июльского обновления (10.0.17134.885). Мы настоятельно рекомендуем обновить устройства 1803 до июльского обновления 1809.

Срок действия подписи OEM и корневых сертификатов

Корневые сертификаты с перекрестной подписью являются SHA1 и будут поддерживаться до истечения срока их действия. Этот срок действия не влияет на уже подписанные драйверы в образе и влияет на подписание новых драйверов после даты окончания срока действия.

Важно!

Начиная с Windows 10 IoT Базовая версии 1809 от 10 ноября 2020 г. с обновлением (17763.1577) поддерживается подписывание драйвера ядра OEM. При этом сертификат подписи кода не требуется связывать с корневым каталогом. Подписывание OEM требует включения функций безопасной загрузки и device guard для розничных и тестовых образов. Сведения об обновлениях инструментов и примерах сертификатов см. в разделе IoT-ADK-AddonKit 17763-v7 .

Дополнительные сведения об устаревании SHA1 см. по следующим ссылкам: