Аттестация работоспособности устройстваDevice Health Attestation

Область применения. Windows Server 2016Applies To: Windows Server 2016

Подтверждение работоспособности устройств (DHA) появилось в ОС Windows 10 в выпуске 1507. Вот что может эта функция:Introduced in Windows 10, version 1507, Device Health Attestation (DHA) included the following:

  • интеграция с платформой управления мобильными устройствами (MDM) Windows 10 с соблюдением стандартов Open Mobile Alliance (OMA);Integrates with Windows 10 Mobile Device Management (MDM) framework in alignment with Open Mobile Alliance (OMA) standards.

  • поддержка устройств, для которых во встроенном ПО или отдельно предоставляется доверенный платформенный модуль (TPM);Supports devices that have a Trusted Module Platform (TPM) provisioned in a firmware or discrete format.

  • повышение уровня корпоративной безопасности путем отслеживания и подтверждения защиты на аппаратном уровне без существенного роста эксплуатационных расходов.Enables enterprises to raise the security bar of their organization to hardware monitored and attested security, with minimal or no impact on operation cost.

Начиная с Windows Server 2016, вы сможете запускать службу DHA в роли сервера для вашей организации.Starting with Windows Server 2016, you can now run the DHA service as a server role within your organization. Эта статья поможет вам узнать, как установить и настроить роль сервера для подтверждения работоспособности устройств.Use this topic to learn how to install and configure the Device Health Attestation server role.

ОбзорOverview

Службы DHA можно использовать для оценки работоспособности таких устройств:You can use DHA to assess device health for:

  • устройства под управлением Windows 10 и Windows 10 Mobile, поддерживающие TPM 1.2 или 2.0;Windows 10 and Windows 10 Mobile devices that support TPM 1.2 or 2.0.
  • локальные устройства с доступом в Интернет, управляемые с помощью Active Directory; устройства без доступа в Интернет, управляемые с помощью Active Directory; устройства, управляемые с помощью Azure Active Directory или гибридного развертывания, включающего Active Directory и Azure Active Directory.On-premises devices that are managed by using Active Directory with Internet access, devices that are managed by using Active Directory without Internet access, devices managed by Azure Active Directory , or a hybrid deployment using both Active Directory and Azure Active Directory.

Служба DHADHA service

Служба DHA проверяет для устройства журналы доверенного платформенного модуля (TPM) и реестра конфигурации платформы (PCR), а затем составляет по ним отчет DHA.The DHA service validates the TPM and PCR logs for a device and then issues a DHA report. Корпорация Майкрософт предлагает три варианта службы DHA.Microsoft offers the DHA service in three ways:

  • Облачная служба DHA. Управляемая корпорацией Майкрософт служба DHA предоставляется бесплатно, оснащена географической балансировкой нагрузки и оптимизирована для доступа из разных регионов мира.DHA cloud service A Microsoft-managed DHA service that is free, geo-load-balanced, and optimized for access from different regions of the world.

  • Локальная служба DHA. Доступна в формате новой роли сервера, начиная с Windows Server 2016.DHA on-premises service A new server role introduced in Windows Server 2016. Она предоставляется бесплатно всем клиентам с лицензией Windows Server 2016.It's available for free to customers that have a Windows Server 2016 license.

  • Облачная служба DHA. На виртуальном узле в Microsoft Azure.DHA Azure cloud service A virtual host in Microsoft Azure. Для этого варианта вам нужен виртуальный узел и лицензии для локальной службы DHA.To do this, you need a virtual host and licenses for the DHA on-premises service.

Служба DHA интегрируется с решениями MDM и предоставляет такие возможности:The DHA service integrates with MDM solutions and provides the following:

  • объединение данных, полученных от устройства (с помощью существующих каналов для управления устройством) с отчетом DHA;Combine the info they receive from devices (through existing device management communication channels) with the DHA report
  • повышение надежности и безопасности решений благодаря данным о подтверждении и защите устройств.Make a more secure and trusted security decision, based on hardware attested and protected data

Ниже приведен пример того, как можно применить DHA для более надежной защиты активов вашей организации.Here's an example that shows how you can use DHA to help raise the security protection bar for your organization's assets.

  1. Создайте политику, которая проверяет такие конфигурации и атрибуты загрузки:You create a policy that checks the following boot configuration/attributes:
    • Безопасная загрузкаSecure Boot
    • BitLockerBitLocker
    • ELAMELAM
  2. Решение MDM применяет эту политику и запускает действия по исправлению на основе данных из отчета DHA.The MDM solution enforces this policy and triggers a corrective action based on the DHA report data. Например, можно проверить следующее:For example, it could verify the following:
    • включена безопасная загрузка, в устройство загружен доверенный код, загрузчик Windows не подвергался изменениям;Secure Boot was enabled, the device loaded trusted code that is authentic, and the Windows boot loader was not tampered with.
    • доверенный загрузчик успешно проверил цифровую подпись ядра Windows и компонентов, которые были загружены при запуске устройства;Trusted Boot successfully verified the digital signature of the Windows kernel and the components that were loaded while the device started.
    • процесс измеряемой загрузки создал отчет аудита, защищенный доверенным платформенным модулем, который можно проверить удаленно;Measured Boot created a TPM-protected audit trail that could be verified remotely.
    • BitLocker был включен и защищал данные, пока устройство было отключено;BitLocker was enabled and that it protected the data when the device was turned off.
    • ELAM был включен на ранних этапах загрузки и контролировал весь процесс работы.ELAM was enabled at early boot stages and is monitoring the runtime.

Облачная служба DHADHA cloud service

Облачная служба DHA предоставляет такие преимущества:The DHA cloud service provides the following benefits:

  • просматривает журналы загрузки устройства TCG и PCR, полученные от устройства, зарегистрированного в решении MDM;Reviews the TCG and PCR device boot logs it receives from a device that is enrolled with an MDM solution.
  • создает защищенный отчет с контролем изменения данных (отчет DHA) о процессе запуска устройства на основе данных, собранных и защищенных доверенным платформенным модулем, установленным на устройстве;Creates a tamper resistant and tamper evident report (DHA report) that describes how the device started based on data that is collected and protected by a device's TPM chip.
  • через защищенный коммуникационный канал доставляет отчет DHA на сервер MDM, который запрашивал его.Delivers the DHA report to the MDM server that requested the report in a protected communication channel.

Локальная служба DHADHA on-premises service

Локальная служба DHA предоставляет все возможности, доступные в облачной службе DHA.The DHA on-premises service offer all the capabilities that are offered by DHA cloud service. Кроме того, она дает такие дополнительные преимущества:It also enables customers to:

  • оптимизирует производительность, так как служба DHA работает в собственном центре обработки данных;Optimize performance by running DHA service in your own data center
  • гарантирует, что отчет DHA не выходит за пределы локальной сети.Ensure that the DHA report does not leave your network

Облачная служба DHA AzureDHA Azure cloud service

Эта служба предоставляет те же функции, что и локальная служба DHA, но выполняется в виде виртуального узла в Microsoft Azure.This service provides the same functionality as the DHA on-premises service, except that the DHA Azure cloud service runs as a virtual host in Microsoft Azure.

Режимы проверки DHADHA validation modes

Локальную службу DHA можно настроить для работы в режиме проверки EKCert или AIKCert.You can set up the DHA on-premises service to run in either EKCert or AIKCert validation mode. В своем отчете служба DHA указывает, в каком из режимов проверки (AIKCert или EKCert) он был составлен.When the DHA service issues a report, it indicates if it was issued in AIKCert or EKCert validation mode. Если поддерживается актуальность цепочки сертификатов EKCert, режимы проверки AIKCert и EKCert обеспечивают безопасность одинаково успешно.AIKCert and EKCert validation modes offer the same security assurance as long as the EKCert chain of trust is kept up-to-date.

Режим проверки EKCertEKCert validation mode

Режим проверки EKCert оптимизирован для устройств в организации, которые не подключены к Интернету.EKCert validation mode is optimized for devices in organizations that are not connected to the Internet. Устройства, подключаемые к службе DHA, работающей в режиме проверки EKCert, не имеют прямого доступа к Интернету.Devices connecting to a DHA service running in EKCert validation mode do not have direct access to the Internet.

Когда DHA работает в режиме проверки EKCert, она основывается на цепочке сертификатов, поддерживаемой в рамках организации. Ее необходимо периодически обновлять (примерно 5–10 раз в год).When DHA is running in EKCert validation mode, it relies on an enterprise managed chain of trust that needs to updated occasionally (approximately 5 - 10 times per year).

Корпорация Майкрософт публикует объединенные пакеты доверенных корневых и промежуточных ЦС всех авторизованных производителей доверенных платформенных модулей в виде общедоступного CAB-архива по мере получения такой информации.Microsoft publishes aggregated packages of trusted Roots and intermediate CA's for approved TPM manufacturers (as they become available) in a publicly accessible archive in .cab archive. Вам следует загрузить этот поток, проверить его целостность и установить его на сервер подтверждения работоспособности устройства.You need to download the feed, validate its integrity, and install it on the server running Device Health Attestation.

— Пример архив https://tpmsec.microsoft.com/OnPremisesDHA/TrustedTPM.cab .An example archive is https://tpmsec.microsoft.com/OnPremisesDHA/TrustedTPM.cab.

Режим проверки AIKCertAIKCert validation mode

Режим проверки AIKCert оптимизирован для производственных сред, которые имеют доступ к Интернету.AIKCert Validation Mode is optimized for operational environments that do have access to the Internet. Устройства, подключаемые к службе DHA, работающей в режиме проверки AIKCert, должны иметь прямой доступ к Интернету и возможность получить сертификат AIK от корпорации Майкрософт.Devices connecting to a DHA service running in AIKCert validation mode must have direct access to the Internet and are able to get an AIK certificate from Microsoft.

Установка и настройка службы DHA в ОС Windows Server 2016Install and configure the DHA service on Windows Server 2016

Следующие разделы помогут вам установить и настроить службу DHA в ОС Windows Server 2016.Use the following sections to get DHA installed and configured on Windows Server 2016.

предварительные требованияPrerequisites

Вот что нужно, чтобы настроить и проверить локальную службу DHA:In order to set up and verify a DHA on-premises service, you need:

  • сервер под управлением ОС Windows Server 2016;A server running Windows Server 2016.
  • одно или несколько клиентских устройств Windows 10 с доверенным платформенным модулем (1.2 или 2.0) в состоянии готовности, на котором запущена последняя сборка предварительной оценки Windows;One (or more) Windows 10 client devices with a TPM (either 1.2 or 2.0) that is in a clear/ready state running the latest Windows Insider build.
  • выбор одного из режимов проверки: EKCert или AIKCert;Decide if you are going to run in EKCert or AIKCert validation mode.
  • такие сертификаты:The following certificates:
    • SSL-сертификат DHA — SSL-сертификат x.509 с экспортируемым закрытым ключом, связанный с доверенным корневым ЦС.DHA SSL certificate An x.509 SSL certificate that chains to an enterprise trusted root with an exportable private key. Этот сертификат защищает данные DHA "в пути", в том числе при передаче с сервера на сервер (служба DHA и сервер MDM) и от сервера к клиенту (служба DHA и устройство с Windows 10).This certificate protects DHA data communications in transit including server to server (DHA service and MDM server) and server to client (DHA service and a Windows 10 device) communications.
    • Сертификат подписи DHA SSL — сертификат x.509 с экспортируемым закрытым ключом, связанный с доверенным корневым ЦС.DHA signing certificate An x.509 certificate that chains to an enterprise trusted root with an exportable private key. Служба DHA использует этот сертификат для цифрового подписывания.The DHA service uses this certificate for digital signing.
    • Сертификат шифрования DHA SSL — сертификат x.509 с экспортируемым закрытым ключом, связанный с доверенным корневым ЦС.DHA encryption certificate An x.509 certificate that chains to an enterprise trusted root with an exportable private key. Служба DHA использует этот сертификат для шифрования.The DHA service also uses this certificate for encryption.

Установка Windows Server 2016Install Windows Server 2016

Установите Windows Server 2016 любым удобным для вас способом, например через службы развертывания Windows или с помощью установщика, размещенного на загрузочном носителе, USB-накопителе или в локальной файловой системе.Install Windows Server 2016 using your preferred installation method, such as Windows Deployment Services, or running the installer from bootable media, a USB drive, or the local file system. Если вы впервые настраиваете локальную службу DHA, устанавливайте Windows Server 2016 в режиме Возможности рабочего стола.If this is the first time you are configuring the DHA on-premises service, you should install Windows Server 2016 using the Desktop Experience installation option.

Добавление роли сервера для подтверждения работоспособности устройствAdd the Device Health Attestation server role

Роль сервера для подтверждения работоспособности устройства и все необходимые зависимости можно установить с помощью диспетчера сервера.You can install the Device Health Attestation server role and its dependencies by using Server Manager.

После установки Windows Server 2016 устройство перезапускается и открывает диспетчер сервера.After you've installed Windows Server 2016, the device restarts and opens Server Manager. Если этого не произошло, в поле поиска меню Пуск найдите и щелкните элемент Диспетчер сервера.If Server manager doesn't start automatically, click Start, and then click Server Manager.

  1. Выберите функцию Добавить роли и компоненты.Click Add roles and features.
  2. На странице Перед работой нажмите кнопку Далее.On the Before you begin page, click Next.
  3. На странице Выбор типа установки щелкните Установка ролей или компонентов, а затем нажмите кнопку Далее.On the Select installation type page, click Role-based or feature-based installation, and then click Next.
  4. На странице Выбор целевого сервера щелкните Выберите сервер из пула серверов, затем выберите сервер и нажмите кнопку Далее.On the Select destination server page, click Select a server from the server pool, select the server, and then click Next.
  5. На странице Выбор ролей сервера установите флажок Аттестация работоспособности устройств.On the Select server roles page, select the Device Health Attestation check box.
  6. Щелкните Добавить компоненты, чтобы установить другие необходимые службы ролей и компоненты.Click Add Features to install other required role services and features.
  7. Нажмите кнопку Далее.Click Next.
  8. На странице Выбор компонентов нажмите кнопку Далее.On the Select features page, click Next.
  9. На странице Роль веб-сервера (IIS) нажмите кнопку Далее.On the Web Server Role (IIS) page, click Next.
  10. На странице Выбор служб ролей нажмите кнопку Далее.On the Select role services page, click Next.
  11. На странице Служба аттестации работоспособности устройств щелкните Далее.On the Device Health Attestation Service page, click Next.
  12. На странице Подтверждение выбранных элементов для установки нажмите кнопку Установить.On the Confirm installation selections page, click Install.
  13. После завершения процесса установки нажмите кнопку Закрыть.When the installation is done, click Close.

Установка сертификатов подписи и шифрованияInstall the signing and encryption certificates

Для установки сертификатов подписи и шифрования используйте следующий сценарий Windows PowerShell.Using the following Windows PowerShell script to install the signing and encryption certificates. Дополнительные сведения о отпечаток, см. в разделе как: Извлечение отпечатка сертификата.For more information about the thumbprint, see How to: Retrieve the Thumbprint of a Certificate.

$key = Get-ChildItem Cert:\LocalMachine\My | Where-Object {$_.Thumbprint -like "<thumbprint>"}
$keyname = $key.PrivateKey.CspKeyContainerInfo.UniqueKeyContainerName
$keypath = $env:ProgramData + "\Microsoft\Crypto\RSA\MachineKeys\" + $keyname
icacls $keypath /grant <username>`:R
  
#<thumbprint>: Certificate thumbprint for encryption certificate or signing certificate
#<username>: Username for web service app pool, by default IIS_IUSRS

Установка пакета доверенных сертификатов корневых ЦС для доверенного платформенного модуляInstall the trusted TPM roots certificate package

Чтобы установить пакет доверенных сертификатов корневых ЦС для доверенного платформенного модуля, разверните пакет, удалите все цепочки сертификатов, которые не являются доверенными для вашей организации, и запустите команду setup.cmd.To install the trusted TPM roots certificate package, you must extract it, remove any trusted chains that are not trusted by your organization, and then run setup.cmd.

Скачивание пакета доверенных сертификатов корневых ЦС для доверенного платформенного модуляDownload the trusted TPM roots certificate package

Прежде чем устанавливать пакет сертификатов, можно загрузить последний список доверенных корневых ЦС для доверенного платформенного МОДУЛЯ из https://tpmsec.microsoft.com/OnPremisesDHA/TrustedTPM.cab .Before you install the certificate package, you can download the latest list of trusted TPM roots from https://tpmsec.microsoft.com/OnPremisesDHA/TrustedTPM.cab.

Важно! Перед установкой пакета проверьте цифровую подпись корпорации Майкрософт.Important: Before installing the package, verify that it is digitally signed by Microsoft.

Извлечение пакет доверенных сертификатовExtract the trusted certificate package

Чтобы извлечь пакет доверенных сертификатов, выполните такие команды:Extract the trusted certificate package by running the following commands.

mkdir .\TrustedTpm
expand -F:* .\TrustedTpm.cab .\TrustedTpm

Удалите цепочки доверия тех поставщиков доверенных платформенных модулей, которые не являются доверенными для вашей организации (необязательно)Remove the trust chains for TPM vendors that are not trusted by your organization (Optional)

Удалите папки любых цепочек доверия для поставщиков, которые не являются доверенными для вашей организации.Delete the folders for any TPM vendor trust chains that are not trusted by your organization.

Примечание. В режиме сертификата AIK требуется папка Microsoft для проверки сертификатов AIK, выданных Майкрософт.Note: If using AIK Certificate mode, the Microsoft folder is required to validate Microsoft issued AIK certificates.

Установка пакета доверенных сертификатовInstall the trusted certificate package

Для установки пакета доверенных сертификатов запустите сценарий установки из CAB-файла.Install the trusted certificate package by running the setup script from the .cab file.

.\setup.cmd

Настройка службы подтверждения работоспособности устройствConfigure the Device Health Attestation service

Для настройки локальной службы DHA можно использовать Windows PowerShell.You can use Windows PowerShell to configure the DHA on-premises service.

Install-DeviceHealthAttestation -EncryptionCertificateThumbprint <encryption> -SigningCertificateThumbprint <signing> -SslCertificateStoreName My -SslCertificateThumbprint <ssl> -SupportedAuthenticationSchema "<schema>"

#<encryption>: Thumbprint of the encryption certificate
#<signing>: Thumbprint of the signing certificate
#<ssl>: Thumbprint of the SSL certificate
#<schema>: Comma-delimited list of supported schemas including AikCertificate, EkCertificate, and AikPub

Настройка политики цепочки сертификатовConfigure the certificate chain policy

Чтобы настроить политику цепочки сертификатов, выполните следующий сценарий Windows PowerShell.Configure the certificate chain policy by running the following Windows PowerShell script.

$policy = Get-DHASCertificateChainPolicy
$policy.RevocationMode = "NoCheck"
Set-DHASCertificateChainPolicy -CertificateChainPolicy $policy

Команды управления DHADHA management commands

Ниже приведены некоторые командлеты Windows PowerShell, которые помогут вам управлять службой DHA.Here are some Windows PowerShell examples that can help you manage the DHA service.

Первая настройка службы DHAConfigure the DHA service for the first time

Install-DeviceHealthAttestation -SigningCertificateThumbprint "<HEX>" -EncryptionCertificateThumbprint "<HEX>" -SslCertificateThumbprint "<HEX>" -Force

Удаление конфигурации службы DHARemove the DHA service configuration

Uninstall-DeviceHealthAttestation -RemoveSslBinding -Force

Получение активного сертификата подписиGet the active signing certificate

Get-DHASActiveSigningCertificate

Установка активного сертификата подписиSet the active signing certificate

Set-DHASActiveSigningCertificate -Thumbprint "<hex>" -Force

Примечание. Этот сертификат должен быть развернут на сервере с запущенной службой DHA LocalMachine\My хранилище сертификатов.Note: This certificate must be deployed on the server running the DHA service in the LocalMachine\My certificate store. Когда устанавливается новый активный сертификат подписи, бывший активный сертификат подписи перемещается в список неактивных сертификатов подписи.When the active signing certificate is set, the existing active signing certificate is moved to the list of inactive signing certificates.

Получение списка неактивных сертификатов подписиList the inactive signing certificates

Get-DHASInactiveSigningCertificates

Удаление неактивных сертификатов подписиRemove any inactive signing certificates

Remove-DHASInactiveSigningCertificates -Force
Remove-DHASInactiveSigningCertificates  -Thumbprint "<hex>" -Force

Примечание. Только один неактивный сертификата (любого типа) могут существовать в службе в любое время.Note: Only one inactive certificate (of any type) may exist in the service at any time. Сертификаты следует удалять из списка неактивных сертификатов, когда они больше не требуются.Certificates should be removed from the list of inactive certificates once they are no longer required.

Получение активного сертификата шифрованияGet the active encryption certificate

Get-DHASActiveEncryptionCertificate

Установка активного сертификата шифрованияSet the active encryption certificate

Set-DHASActiveEncryptionCertificate -Thumbprint "<hex>" -Force

Этот сертификат должен быть развернут на устройстве в хранилище сертификатов LocalMachine\My.The certificate must be deployed on the device in the LocalMachine\My certificate store.

Когда устанавливается новый активный сертификат шифрования, бывший активный сертификат шифрования перемещается в список неактивных сертификатов шифрования.When the active encryption certificate is set, the existing active encryption certificate is moved to the list of inactive encryption certificates.

Получение списка неактивных сертификатов шифрованияList the inactive encryption certificates

Get-DHASInactiveEncryptionCertificates

Удаление неактивных сертификатов шифрованияRemove any inactive encryption certificates

Remove-DHASInactiveEncryptionCertificates -Force
Remove-DHASInactiveEncryptionCertificates -Thumbprint "<hex>" -Force 

Получение конфигурации X509ChainPolicyGet the X509ChainPolicy configuration

Get-DHASCertificateChainPolicy

Изменение конфигурации X509ChainPolicyChange the X509ChainPolicy configuration

$certificateChainPolicy = Get-DHASInactiveEncryptionCertificates
$certificateChainPolicy.RevocationFlag = <X509RevocationFlag>
$certificateChainPolicy.RevocationMode = <X509RevocationMode>
$certificateChainPolicy.VerificationFlags = <X509VerificationFlags>
$certificateChainPolicy.UrlRetrievalTimeout = <TimeSpan>
Set-DHASCertificateChainPolicy = $certificateChainPolicy

Создание отчетов в службе DHADHA service reporting

Далее следует список сообщений, которые служба DHA может передавать в решение MDM.The following are a list of messages that are reported by the DHA service to the MDM solution:

  • 200 HTTP OK.200 HTTP OK. Сертификат возвращен.The certificate is returned.
  • 400 — ошибочный запрос.400 Bad request. Возможные причины: недопустимый формат запроса, недопустимый сертификат работоспособности, несоответствие подписи сертификата, недопустимый BLOB-объект подтверждения работоспособности или недопустимый BLOB-объект состояния работоспособности.Invalid request format, invalid health certificate, certificate signature does not match, invalid Health Attestation Blob, or an invalid Health Status Blob. Кроме того, этот ответ содержит сообщение (соответствующее схеме ответа), содержащее код ошибки и сообщение об ошибке, которые можно использовать для диагностики.The response also contains a message, as described by the response schema, with an error code and an error message that can be used for diagnostics.
  • 500 — внутренняя ошибка сервера.500 Internal server error. Это может произойти, если служба по какой-либо причине не может выдавать сертификаты.This can happen if there are issues that prevent the service from issuing certificates.
  • 503. Система регулирования отклоняет запросы, чтобы предотвратить перегрузку сервера.503 Throttling is rejecting requests to prevent server overloading.