デバイス正常性構成証明Device Health Attestation

適用先:Windows Server 2016Applies To: Windows Server 2016

Windows 10、バージョン 1507 で導入されたデバイス正常性構成証明 (DHA) には、次の特長があります。Introduced in Windows 10, version 1507, Device Health Attestation (DHA) included the following:

  • Open Mobile Alliance (OMA) 標準に合わせて Windows 10 モバイル デバイス管理 (MDM) フレームワークと統合します。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.


DHA を使用して、以下のデバイスの正常性を評価することができます。You can use DHA to assess device health for:

  • TPM 1.2 または 2.0 をサポートする Windows 10 および Windows 10 Mobile のデバイス。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.

DHA サービスDHA service

DHA サービスでは、デバイスの TPM と PCR のログを検証してから、DHA レポートを発行します。The DHA service validates the TPM and PCR logs for a device and then issues a DHA report. Microsoft は、次の 3 つの方法で DHA サービスを提供します。Microsoft offers the DHA service in three ways:

  • DHA クラウド サービス: 無料で、地理的に負荷分散され、かつ世界のさまざまな地域からのアクセス用に最適化された、Microsoft によって管理される 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 Azure クラウド サービス: 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
  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.
    • メジャー ブートによって、リモートで確認できる TPM で保護された監査証跡が作成されたこと。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.

DHA クラウド サービスDHA cloud service

DHA クラウド サービスには、次の利点があります。The DHA cloud service provides the following benefits:

  • MDM ソリューションで登録されているデバイスから受信する TCG と PCR デバイスのブート ログを確認します。Reviews the TCG and PCR device boot logs it receives from a device that is enrolled with an MDM solution.
  • デバイスの TPM チップによって収集および保護されたデータに基づいて、デバイスが開始した方法を説明する、不正開封防止および、不正開封の跡がわかるレポート (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.

DHA オンプレミス サービスDHA 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 Azure クラウド サービスDHA Azure cloud service

このサービスは、DHA Azure クラウド サービスが Microsoft Azure の仮想ホストとして実行する点を除いて、DHA オンプレミス サービスと同じ機能を提供します。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.

DHA 検証モードDHA 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. AIKCert と EKCert 検証モードは、信頼されている EKCert チェーンが最新である限り、同じセキュリティ保証を提供します。AIKCert and EKCert validation modes offer the same security assurance as long as the EKCert chain of trust is kept up-to-date.

EKCert 検証モードEKCert validation mode

EKCert 検証モードは、インターネットに接続されていない組織内のデバイスに向けに最適化されています。EKCert validation mode is optimized for devices in organizations that are not connected to the Internet. EKCert 検証モードで実行されている DHA サービスに接続するデバイスは、インターネットに直接アクセスできませんDevices connecting to a DHA service running in EKCert validation mode do not have direct access to the Internet.

DHA が EKCert 検証モードで実行されている場合は、随時 (1 年あたり約 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).

Microsoft は、承認された TPM 製造元に対して (利用可能になったときに) 信頼されたルートおよび中間 CA の集約されたパッケージを、.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://go.microsoft.com/fwlink/?linkid=2097925しては、があります。An example archive is https://go.microsoft.com/fwlink/?linkid=2097925.

AIKCert 検証モードAIKCert validation mode

AIKCert 検証モードは、インターネットにアクセス可能な運用環境向けに最適化されています。AIKCert Validation Mode is optimized for operational environments that do have access to the Internet. AIKCert 検証モードで実行されている DHA サービスに接続するデバイスは、インターネットに直接アクセスでき、Microsoft から 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 2016 にインストールして構成するInstall 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.


DHA オンプレミス サービスを設定して検証するには、次のものが必要です。In order to set up and verify a DHA on-premises service, you need:

  • Windows Server 2016 を実行するサーバー。A server running Windows Server 2016.
  • TPM (1.2 または 2.0) を装備し、最新の Windows Insider ビルドを実行している、クリア/準備完了状態の Windows 10 クライアント デバイス 1 台 (以上)。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:
    • DHA SSL 証明書: エクスポート可能な秘密キーを持つ、エンタープライズ信頼済みのルートにチェーンされている x.509 SSL 証明書。DHA SSL certificate An x.509 SSL certificate that chains to an enterprise trusted root with an exportable private key. この証明書は、サーバー間 (DHA サービスと MDM サーバー) およびサーバーからクライアント間 (DHA サービスと Windows 10 デバイス) の通信を含む、転送中の DHA データ通信を保護します。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 署名証明書: エクスポート可能な秘密キーを持つ、エンタープライズ信頼済みのルートにチェーンされている 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 暗号化証明書: エクスポート可能な秘密キーを持つ、エンタープライズ信頼済みのルートにチェーンされている 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 2016 をインストールするInstall Windows Server 2016

Windows 展開サービスなど、好みのインストール方法を使用するか、起動可能なメディア、USB ドライブ、またはローカル ファイル システムからインストーラーを実行して、Windows Server 2016 をインストールします。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. [Web サーバーの役割 (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

信頼済み TPM のルート証明書パッケージをインストールするInstall the trusted TPM roots certificate package

信頼済み TPM ルート証明書パッケージをインストールするには、パッケージを展開し、組織で信頼されていない信頼済みチェーンを削除してから 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.

信頼済み TPM ルート証明書パッケージをダウンロードするDownload the trusted TPM roots certificate package

証明書パッケージをインストールする前に、からhttps://go.microsoft.com/fwlink/?linkid=2097925信頼できる TPM ルートの最新の一覧をダウンロードできます。Before you install the certificate package, you can download the latest list of trusted TPM roots from https://go.microsoft.com/fwlink/?linkid=2097925.

重要: パッケージをインストールする前に、Microsoft によってデジタル署名されていることを確認します。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

組織で信頼されていない TPM ベンダーの信頼済みチェーンを削除する (省略可能)Remove the trust chains for TPM vendors that are not trusted by your organization (Optional)

組織によって信頼されていない TPM ベンダーの信頼チェーンのフォルダーを削除します。Delete the folders for any TPM vendor trust chains that are not trusted by your organization.

注: AIK 証明書モードを使用する場合は、microsoft が発行した AIK 証明書を検証するために Microsoft フォルダーが必要です。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.


デバイス正常性構成証明を構成するConfigure the Device Health Attestation service

Windows PowerShell を使用して、DHA オンプレミス サービスを構成することができます。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

DHA 管理コマンドDHA management commands

DHA サービスの管理に役立つ Windows PowerShell の例をいくつか示します。Here are some Windows PowerShell examples that can help you manage the DHA service.

初めて DHA サービスを構成するConfigure the DHA service for the first time

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

DHA サービス構成を削除するRemove the DHA service configuration

Uninstall-DeviceHealthAttestation -RemoveSslBinding -Force

アクティブな署名証明書を取得するGet the active signing certificate


アクティブな署名証明書を設定するSet the active signing certificate

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

注: この証明書は、 LocalMachine\My証明書ストアの DHA サービスを実行しているサーバーに展開する必要があります。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


非アクティブな署名証明書を削除する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


アクティブな暗号化証明書を設定する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


非アクティブな暗号化証明書を削除するRemove any inactive encryption certificates

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

X509ChainPolicy 構成を取得するGet the X509ChainPolicy configuration


X509ChainPolicy 構成を変更するChange the X509ChainPolicy configuration

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

DHA サービス レポートDHA 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 Bad request。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 Internal server error。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.