Требования к подписи кода драйвера

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

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

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

Где получить сертификаты подписывания кода

Сертификаты подписывания кода можно приобрести у одного из следующих центров сертификации:

Драйверы, подписанные сертификатом EV

Учетная запись панели мониторинга Центр разработки оборудования должна иметь по крайней мере один сертификат EV, связанный с ним, чтобы отправить двоичные файлы для подписывания аттестации или отправить двоичные файлы для сертификации HLK. Применяются следующие правила:

  • Зарегистрированный сертификат EV должен быть действительным во время отправки.
  • Хотя корпорация Майкрософт настоятельно рекомендует подписывать отдельные отправки с помощью сертификата EV, вы также можете подписывать отправки с помощью сертификата подписи Authenticode, который также зарегистрирован в учетной записи Центра партнеров.
  • Все сертификаты должны быть SHA2 и подписаны с помощью переключателя командной /fd sha256 строки SignTool.

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

После проверки контактных данных центра сертификации и утверждения покупки сертификата следуйте инструкциям по получению сертификата.

Тестируемые и подписанные на панели мониторинга драйверы HLK

Подписанный на панели мониторинга драйвер, прошедший тесты HLK, будет работать в Windows Vista через Windows 10, включая выпуски Windows Server. Тестирование HLK — это рекомендуемый метод подписывания драйвера, так как он подписывает драйвер для всех версий ОС. Кроме того, тестируемые драйверы HLK демонстрируют, что производитель тщательно тестировал свое оборудование для удовлетворения всех требований Майкрософт в отношении надежности, безопасности, эффективности питания, удобства обслуживания и производительности, чтобы обеспечить отличный интерфейс Windows. Это включает в себя соответствие отраслевым стандартам и соблюдение спецификаций Майкрософт для функций, относящихся к технологии, что помогает обеспечить правильную установку, развертывание, подключение и взаимодействие. Сведения о создании тестового драйвера HLK для отправки панели мониторинга см. в статье "Начало работы с Windows HLK".

Драйверы, подписанные аттестацией Windows 10 для сценариев тестирования

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

Только для тестирования можно отправлять драйверы для подписывания аттестации, для которых не требуется тестирование HLK.

Подписывание аттестации имеет следующие ограничения и требования:

  • Не удается опубликовать подписанные драйверы аттестации для Обновл. Windows для розничной аудитории. Чтобы опубликовать драйвер в Обновл. Windows для розничной аудитории, необходимо отправить драйвер через программу совместимости оборудования Windows (WHCP). Публикация подписанных драйверов аттестации в Обновл. Windows для тестирования поддерживается путем выбора параметров CoDev или Test Registry Key / Surface SSRK.

  • Подписывание аттестации работает только в Windows 10 Desktop и более поздних версиях Windows. Драйвер с подписью аттестации не будет работать для других версий Windows, таких как Windows Server 2016, Windows 8 или Windows 7.

  • Подписывание аттестации поддерживает режим ядра Windows 10 Desktop и драйверы пользовательского режима. Хотя драйверы пользовательского режима не должны быть подписаны Корпорацией Майкрософт для Windows 10, для драйверов режима пользователя и ядра можно использовать один и тот же процесс аттестации. Для драйверов, которые должны работать в предыдущих версиях Windows, необходимо отправить журналы тестов HLK/HCK для сертификации Windows.

  • Подписывание аттестации не возвращает соответствующий уровень PE для двоичных файлов ELAM или Windows Hello PE. Для получения дополнительных атрибутов подписи они должны быть проверены и отправлены в виде пакетов HLKX.

  • Для подписывания аттестации требуется использование сертификата расширенной проверки (EV) для отправки драйвера в Центр партнеров (Центр разработки оборудования панель мониторинга).

  • Подписывание аттестации требует, чтобы имена папок драйверов не содержали специальных символов, UNC-пути к общей папке и не более 40 символов.

  • Когда драйвер получает подписывание аттестации, он не сертифицирован в Windows. Подпись аттестации от Корпорации Майкрософт указывает, что драйвер может быть доверен Windows, но поскольку драйвер не был протестирован в HLK Studio, нет гарантий совместимости, функциональности и т. д. Драйвер, который получает подпись аттестации, не может быть опубликован в розничных аудиториях через Обновл. Windows. Если вы хотите опубликовать драйвер в розничных аудиториях, необходимо отправить драйвер через программу совместимости оборудования Windows (WHCP).

  • DUA (допустимое обновление драйвера) не поддерживает драйверы, подписанные с помощью аттестации.

  • С помощью аттестации можно обрабатывать следующие уровни PE и двоичные файлы:

    • PeTrust
    • DrmLevel
    • ХЭЛ
    • .exe
    • CAB
    • .dll
    • OCX
    • .msi
    • .Xpi
    • .Xap

Дополнительные сведения о том, как создать подписанный драйвер аттестации для драйверов Windows 10+ см. в разделе "Аттестация" с знаком драйверов Windows 10+ и более поздних версий.

Драйверы с подписанными подписами Windows Server

  • Windows Server 2016 и более поздней версии не принимает тестированные отправки подписей драйверов и устройств.
  • Панель мониторинга подписывает только драйверы устройств и фильтров, которые успешно прошли тесты HLK.
  • Windows Server 2016 и более поздней версии загружают только подписанные драйверы панели мониторинга, успешно прошедшие тесты HLK.

Управление приложениями в Защитнике Windows

Предприятия могут реализовать политику для изменения требований к подписи драйвера с помощью Windows 10 Корпоративная выпуска. Управление приложениями в Защитнике Windows (WDAC) предоставляет политику целостности кода, определяемую предприятием, которая может быть настроена для требования по крайней мере драйвера, подписанного аттестацией. Дополнительные сведения о WDAC см. в статье "Планирование и начало работы" в процессе развертывания управления приложениями в Защитнике Windows.

Требования к подписи драйвера Windows

В таблице ниже приведены сведения о требованиях к подписи драйвера для Windows:

Версия Панель мониторинга аттестации с подписью Подписанный подписанный тест HLK-теста Перекрестный подписывая с помощью сертификата SHA-1, выданного до 29 июля 2015 г.
Windows Vista No Да Да
Windows 7 No Да Да
Windows 8, Windows 8.1 No Да Да
Windows 10 Да Да Нет (с Windows 10 1809)
Windows 10 — включена DG *Зависит от конфигурации *Зависит от конфигурации *Зависит от конфигурации
Windows Server 2008 R2 No Да Да
Windows Server 2012 R2 No Да Да
Windows Server >= 2016 No Да Да
Windows Server >= 2016 — включенА DG *Зависит от конфигурации *Зависит от конфигурации *Зависит от конфигурации
Windows IoT Корпоративная Да Да Да
Windows IoT Enterprise— DG включено *Зависит от конфигурации *Зависит от конфигурации *Зависит от конфигурации
Windows IoT Core(1) Да (не требуется) Да (не требуется) Да (перекрестная подпись также будет работать для сертификатов, выданных после 29 июля 2015 г.)

*Конфигурация зависит от выпуска Windows 10 Корпоративная, организации могут использовать управление приложениями Защитника Windows (WDAC) для определения пользовательских требований к подписи. Дополнительные сведения о WDAC см. в статье "Планирование и начало работы" в процессе развертывания управления приложениями в Защитнике Windows.

(1) Подписывание драйвера требуется для производителей, создающего розничные продукты (т. е. для неразработки целей разработки) с помощью IoT Core. Список утвержденных центров сертификации (ЦС) см. в разделе "Кросс-сертификаты" для подписи кода в режиме ядра. Если включена безопасная загрузка UEFI, драйверы должны быть подписаны.