Already Windows 8.0 introduced a new possibility of evaluating the health of the boot process called Measured Boot, a recorded variant of the Secure Boot. But the suitable enterprise counter part for checking the health data and enforcing access control was not available at that time.
With Windows 10 1511 the technique was named as Windows Provable PC Health (PPCH) and later on with Windows 1607 and newer renamed to DHA. On Windows Server 2016 the counterpart is named Health Attestation Service (HAS).
But what does DHA exactly? It will combine Secure Boot, VBS, ELAM, and protection of your early-boot drivers and measures them with the help of your TPM 2.0. These measured boot data results are collected by the health attestationĀ configuration service provider (CSP) and sent to a Remote HAS for verification/comparison against current policies:
![](Images/2c46bff1-79b9-4496-9fc4-1be880e306af.png)
The health attestation process will check your hardware boot components (for example, PCR values), OS boot components (for example, boot counter) and if Device Guard is enabled, current Device Guard policy. Further on the Windows kernel (for example, signing) will be checked, your ELAM compatible anti-malware will be launched as the first kernel mode driver and measured and last but not least all necessary early boot drivers will be measured.
When your client is requesting access to a protected corporate resource, your client needs a valid health attestation. The health attestation CSP will send the collected data to the pre-provisioned URI. Currently the DHA service is designed to expect a Microsoft cloud service as HAS counterpart (has.spserv.microsoft.com). An on premises only variant is currently investigated and possibly available in a future release of Windows 10. The collected data is signed and contains your TPM log, the Attestation Identity Key (AIK) data (PCR values, boot counter, and so on) and the AIK certificate information.
The remote device health attestation service verifies the certificate and compares the data against its configured values. If everything is within range, a device health token containing the health information together with a valid issuance time will be generated, encrypted, signed, and sent back to client. The client stores the health encrypted blob in its local store.
![](Images/e40c8570-1de6-4dd8-8af1-a571f2d9fe4e.png)
These steps are done after activation of health attestation and on every boot and redone as soon as the validity date of the health token expired. When accessing a high-value asset in your corporate environment, the client will send its valid health token to the identity provider and a conditional access decision will grant or deny access. When health criteria are not met or token is outdated no access is granted.
![](Images/c3fa8609-9a51-4b40-8b58-009689bcfa8a.png)
On client side you will need Windows 10 installed in UEFI mode with activated Secure Boot and TPM 2.0. With the current implementation of DHA you will need on backend side the HAS Microsoft cloud service, a MDM solution supporting DHA (for example, InTune) and Azure AD standalone or Azure AD with AD connector in hybrid mode.
Use of VBS, Credential Guard and Device Guard for further improving security is recommended.
The activation of health attestation on client side will be done as part of enrollment with the MDM provider. Without configuration health attestation will be disabled by default.
![](Images/1c46ce5d-c492-4a07-8a79-0c8079a46955.png)
DHA is a consequent improvement over the discontinued Network Access Protection (NAP). It will provide an easy way to increase device security and integrity without boss around your users.