Silent BitLocker encryption during Windows Autopilot looks like a switch. You set two policy values, you assign the profile, and devices arrive encrypted. In practice it is not a switch. It is a race. On one side, Windows is trying to encrypt the disk on its own as soon as the out-of-box experience (OOBE) finishes. On the other side, Intune is trying to deliver a disk encryption policy before that happens. Whoever gets there first decides what the device ends up with. The loser leaves no obvious trace. Weeks later a compliance report shows a handful of laptops that are simply not encrypted, and nobody can say why.
Two different mechanisms can encrypt an Autopilot device: BitLocker automatic device encryption, which runs on its own after OOBE using XTS-AES 128-bit by default, and policy-driven silent encryption from the BitLocker configuration service provider (CSP). Microsoft documents that during Autopilot, BitLocker is enabled after the device setup portion of the Enrollment Status Page (ESP), and that if an ESP is not enabled, the BitLocker policy does not apply before encryption starts. So the ESP is not decoration here. It is the thing that holds the door open long enough for your policy to arrive. Silent enablement also needs a specific set of prerequisites to be true at that moment, and AllowStandardUserEncryption only works when AllowWarningForOtherDiskEncryption is set to 0.
The problem: the laptop reached the desktop unencrypted
The report always arrives late. Someone exports the Intune encryption report before an audit, sorts by encryption status, and finds a group of Autopilot-provisioned laptops sitting at Not encrypted. The devices are enrolled. They are compliant on everything else. The disk encryption profile shows as successfully applied. And yet the operating system volume has no protection on it.
There is a second, quieter version of this failure that catches even careful teams. The device is encrypted, so the report shows green. But it is encrypted with XTS-AES 128-bit when your policy asked for XTS-AES 256-bit. Nobody notices, because the column you are looking at only says encrypted. Microsoft is blunt about the cost of fixing this one. A device that receives the settings after encrypting automatically has to be decrypted before the algorithm can be changed. On a fleet, that is a re-provisioning exercise dressed up as a policy change.
The reason nobody notices at the time is that silent means silent. Suppressing the warning prompt suppresses the encryption notification as well. There is no toast, no wizard, no yellow shield in File Explorer to say that something did not happen. The user signs in, gets a desktop, and starts work. The evidence of what happened, or failed to happen, sits in an event log channel that nobody opens until an audit forces it.
Why it happens: two encryption engines racing one policy delivery
To fix the race you have to understand both runners. Start with the one that does not wait for you.
Runner one: automatic device encryption
Device encryption is a Windows feature that enables BitLocker automatically on qualifying devices. It starts during OOBE. Microsoft documents the hardware conditions, and they matter, because a device that does not meet them will not encrypt itself at all.
| Condition | What it means | Notes |
|---|---|---|
| TPM present | Trusted Platform Module 1.2 or 2.0, with PCR 7 support | PCR 7 measures Secure Boot state. Extra option ROM drivers, or an extra certificate authority hash in the boot path, prevent BitLocker choosing PCR 7 binding |
| UEFI Secure Boot enabled | Platform Secure Boot must also be enabled | Silent enablement requires it. Without it you get the error about the UEFI variable SecureBoot not being readable |
| Modern Standby or HSTI compliant | Modern Standby requirements, or a passing Hardware Security Testability Interface (HSTI) test | Removed from Windows 11 version 24H2 onward |
| No un-allowed DMA interfaces | No externally accessible Direct Memory Access ports | Also removed from Windows 11 version 24H2 onward. The AllowedBuses registry key is ignored from 24H2 |
| 250 MB free on the system partition | Above and beyond the files needed to boot and recover Windows | The system partition itself must not be encrypted |
The sequencing inside automatic device encryption is the part that trips people up. Encryption is initialised on the operating system drive with a clear key, which Microsoft describes as the equivalent of BitLocker being suspended. In that state the volume looks encrypted but the data is not protected. Protection is only armed when the user signs in with a Microsoft Entra ID account or a Microsoft account. For an Entra joined device, the recovery password is created when the user authenticates to Entra ID, the key is backed up to Entra ID, the TPM protector is created, and only then is the clear key removed.
And the default algorithm is the crux of the whole post. Automatic device encryption uses XTS-AES 128-bit by default. If your organisation standardised on 256-bit, every device that encrypts itself before your policy arrives is wrong, permanently, until it is decrypted.
Runner two: policy-driven silent encryption
The BitLocker CSP path is the one you control. A handful of nodes do the work, and they are interdependent in a way the setting names do not advertise. Every node below hangs off one shared parent.
| Node | Value for silent encryption | Documented behaviour |
|---|---|---|
RequireDeviceEncryption | 1 | Setting this to 1 triggers encryption of all drives, silently or non-silently depending on the next node. Setting it to 0 does not decrypt anything, it just stops prompting |
AllowWarningForOtherDiskEncryption | 0 | Disables the warning prompt and the encryption notification. Windows will attempt to silently enable BitLocker. Takes effect only if RequireDeviceEncryption is 1, and the value 0 applies to Entra joined devices only |
AllowStandardUserEncryption | 1 | Lets RequireDeviceEncryption encrypt fixed drives even when the signed-in user is a standard user. Has a hard dependency on AllowWarningForOtherDiskEncryption being 0 |
EncryptionMethodByDriveType | Set all three drive types | 3 is AES-CBC 128, 4 is AES-CBC 256, 6 is XTS-AES 128, 7 is XTS-AES 256. You must specify values for all three drive types or the node fails with a 500 return status |
SystemDrivesRequireStartupAuthentication | Enabled, PIN and key not allowed | The parent for the four TPM startup options. Only one additional authentication option can be required at startup, otherwise a policy error occurs |
SystemDrivesRecoveryOptions | Backup required | Holds the escrow decisions, including do not enable BitLocker until recovery information is stored in AD DS |
ConfigureRecoveryPasswordRotation | 1 or 2 | 1 turns on rotation upon use for Entra joined devices, 2 for both Entra joined and hybrid joined. Effective only when recovery password backup is configured as required |
That standard-user dependency deserves its own sentence, because it is the most common reason a correct-looking policy does nothing at all. The documentation is explicit. If AllowWarningForOtherDiskEncryption is not set, or is set to 1, then RequireDeviceEncryption will not try to encrypt drives while a standard user is the current logged-on user. On a user-driven Autopilot deployment where the enrolling user is deliberately not a local administrator, that is every single device.
There is also an operating system floor that shifts with the same question. If end users sign in as administrators, silent enablement needs Windows 10 version 1803 or later, or Windows 11. If they sign in as standard users, it needs Windows 10 version 1809 or later, or Windows 11.
AllowWarningForOtherDiskEncryption to 0 suppresses the warning about other disk encryption software. Microsoft warns that enabling BitLocker on a device with non-Microsoft encryption "may render the device unusable and will require reinstallation of Windows". Silent BitLocker policies bypass that warning by design, which is exactly why you inventory for third-party encryption products before you deploy the policy, not after.The actual ordering, and where the ESP sits
Here is the sequence Microsoft documents, and it is worth reading twice. BitLocker has logic that does not start encrypting until the end of OOBE, after the Enrollment Status Page device configuration phase is complete. That delay exists specifically to give the device enough time to receive the BitLocker policy settings before encryption starts. And from the Autopilot side: during Windows Autopilot, BitLocker will be enabled after the device setup portion of the Enrollment Status Page.
Then comes the line that turns the ESP from a nice-to-have into a hard requirement. In the Autopilot BitLocker guidance, the last step of configuring the policy says to configure and assign an Enrollment Status Page for the Windows Autopilot device, because if an ESP is not enabled, the BitLocker policy does not apply before encryption starts.
Put those together and the failure mode is obvious. The ESP device setup phase is the window. Your disk encryption policy has to arrive inside that window. Turn the ESP off, or let the device leave the ESP early, and the window closes before the policy lands. Automatic device encryption then does what it was always going to do, with its own defaults.
Encryption type, and why you cannot choose it under silent enablement
When BitLocker is enabled silently, the encryption type is decided by hardware, not by you. Microsoft documents that the system automatically uses full disk encryption on non-Modern Standby devices and used space only encryption on Modern Standby devices, and that the type cannot be customised for silent encryption scenarios. The BitLocker CSP puts it even more starkly for RequireDeviceEncryption: only full disk encryption is supported when using this CSP for silent encryption.
If you need to pin the type anyway, that is what SystemDrivesEncryptionType is for, surfaced in the settings catalog as Enforce drive encryption type on operating system drives. But like the algorithm, it only applies when BitLocker is first enabled. Late is the same as never.
Recovery key escrow, and its own separate timing problem
Encryption succeeding and the key being recoverable are two different outcomes. The order of backup endpoints for a fixed data drive is documented and specific: the user's Active Directory Domain Services account, then the user's Entra ID account, then the user's personal OneDrive for MDM or MAM only. Encryption waits until one of those three locations backs up successfully.
For the operating system drive the behaviour hinges on the warning prompt. When you disable the warning prompt, the OS drive's recovery key backs up to the user's Entra account. When you allow the prompt, the user who receives it chooses where the key goes, which is not a decision you want a new starter making on their first morning.
SystemDrivesRecoveryOptions. With it enabled, a recovery password is generated automatically and BitLocker will not turn on until the backup succeeds. It is also a precondition for recovery password rotation to be effective at all. For Entra joined devices the password goes to Entra ID. For hybrid joined devices it goes to both Active Directory and Entra ID.One capacity limit is worth committing to memory, because it produces a genuinely baffling symptom. Microsoft Entra ID supports a maximum of 200 BitLocker recovery keys per device. Reach that limit and silent encryption fails, because the recovery key backup that has to happen before encryption starts cannot complete. Devices that have been reset and re-provisioned many times over are the ones that hit it.
The Group Policy surface underneath all of it
BitLocker predates MDM, so most of these settings are ADMX-backed and land in the same registry key whether they arrive by Group Policy or by CSP. The Group Policy home for all of them is Computer Configuration > Administrative Templates > Windows Components > BitLocker Drive Encryption, with per-drive-type subfolders. The shared registry parent is stated once here, and every value in the table sits directly under it.
| Value name | Group Policy setting | Why it matters to silent encryption |
|---|---|---|
UseAdvancedStartup | Require additional authentication at startup | The parent switch. Must be enabled before the four TPM startup options become configurable at all |
UseTPM | Configure TPM startup | Allow TPM or Require TPM. Anything that demands more than the TPM breaks silence |
UseTPMPIN | Configure TPM startup PIN | Must be set to do not allow. A required PIN needs a human at the keyboard |
UseTPMKey | Configure TPM startup key | Must be set to do not allow, for the same reason |
UseTPMKeyPIN | Configure TPM startup key and PIN | Must be set to do not allow |
EncryptionMethodWithXtsOs | Choose drive encryption method and cipher strength | The OS drive algorithm. This is the value that has to arrive before encryption begins |
EncryptionMethodWithXtsFdv | Choose drive encryption method and cipher strength | Fixed data drive algorithm. All three drive types must be specified together |
EncryptionMethodWithXtsRdv | Choose drive encryption method and cipher strength | Removable data drive algorithm |
OSEncryptionType | Enforce drive encryption type on operating system drives | Full versus used space only. Ignored if the drive is already encrypted or encryption is in progress |
OSRecovery | Choose how BitLocker-protected operating system drives can be recovered | The container for every escrow decision on the OS drive |
OSActiveDirectoryBackup | Save BitLocker recovery information to AD DS, operating system drives | Turns on backup of the recovery password, or the password plus key package |
OSRequireActiveDirectoryBackup | Do not enable BitLocker until recovery information is stored in AD DS | Makes escrow a precondition of encryption. Also required for password rotation to take effect |
FDVRecovery | Choose how BitLocker-protected fixed drives can be recovered | The fixed data drive equivalent of OSRecovery |
FDVEncryptionType | Enforce drive encryption type on fixed data drives | Fixed drive full versus used space only |
OSEnablePreBootPinExceptionOnDECapableDevice | Allow devices compliant with InstantGo or HSTI to opt out of preboot PIN | Lets device-encryption-capable hardware skip a preboot PIN that would otherwise block silence |
DisallowStandardUserPINReset | Disallow standard users from changing the PIN or password | Relevant once you have deliberately chosen a PIN and given up on silence |
RequireDeviceEncryption, AllowWarningForOtherDiskEncryption, AllowStandardUserEncryption and ConfigureRecoveryPasswordRotation are each documented as GPO: Not available. They are CSP-only. You cannot build silent encryption with Group Policy alone, no matter how complete your BitLocker GPO is. This is the one place where a domain-joined-forever mindset produces a device that never encrypts.How to verify: read the device, then read the fleet
Verification comes before the fix, because the fix depends on which of the two runners won. A device that never encrypted needs a prerequisite corrected. A device that encrypted with the wrong algorithm needs decrypting. Those are different tickets, and only the device can tell you which one you have.
Step one: the volume itself
Two commands answer most of it. manage-bde -status gives you the conversion status and the encryption method. Get-BitLockerVolume gives you the same information plus the protector types, which is the tell you actually want.
Three readings matter together. ProtectionStatus of Off on a volume that reports FullyEncrypted is the clear-key state, which means encryption ran but protection was never armed. A protector list that contains TpmPin, TpmStartupKey or Password means something interactive created it, so silent enablement is not what happened here. And XtsAes128 on a device whose policy asks for 256-bit is the fingerprint of automatic device encryption winning the race.
EncryptionMethodWithXtsOs from the FVE key, translate it (6 is XTS-AES 128, 7 is XTS-AES 256), and compare it to the volume's actual EncryptionMethod. A mismatch where the volume is on the 128-bit default is close to proof that encryption started before your policy landed.Step two: the event log, and the channel names that are not what the docs say
This is where the timeline lives. Microsoft directs you to Event Viewer, under Applications and Services Logs > Microsoft > Windows > BitLocker-API, and to read the Management and Operational logs there.
There is a wrinkle worth knowing if you script against these logs. The troubleshooting article names the channels as Microsoft-Windows-BitLocker-API/Management and Microsoft-Windows-BitLocker-API/Operational, but the wevtutil example on that same page uses a different string. On a current Windows 11 install, the channel names that wevtutil el actually enumerates are the second form. Use the enumerated names in scripts and treat the folder label in Event Viewer as a display name.
Microsoft-Windows-BitLocker/BitLocker Operational
Microsoft-Windows-BitLocker/Tracing
Microsoft-Windows-BitLocker-DrivePreparationTool/Admin
Microsoft-Windows-BitLocker-DrivePreparationTool/Operational
Read that list as a story rather than a set of unrelated rows. The 846 followed immediately by a 778 is the sequence that produces an unencrypted device: the escrow failed, so BitLocker reverted the volume rather than leaving a key nobody could recover. That is the system behaving correctly and still handing you a non-compliant laptop.
The documented event identifiers are worth keeping in one place. All of them appear in the Management log of the channel named above.
| Event ID | What it means | What to do about it |
|---|---|---|
| 796 | Normal BitLocker operation event | Nothing. Alongside 845 this is what a healthy device looks like |
| 845 | Recovery information for the volume was backed up successfully | Nothing. This is the escrow confirmation you are looking for |
| 846 | Failed to back up BitLocker recovery information to Entra ID | Check network availability and Entra join health. Known error 0x80072f9a on Windows 10 1809 is a private-key permission issue fixed by the May 2019 update |
| 778 | The volume was reverted to an unprotected state | Almost always follows a failed 846. Fix escrow first, then re-trigger |
| 851 | Failed to enable Silent Encryption, contact the manufacturer for BIOS upgrade instructions | The device is in legacy BIOS mode. Silent encryption does not support it. Check BIOS Mode in msinfo32 |
| 853 | A compatible TPM cannot be found, or bootable media was detected | Two different causes on one ID. Read the message body. Either enable the TPM in firmware, or remove the bootable CD or DVD and restart |
| 854 | Failed to enable Silent Encryption. WinRE is not configured | Run reagentc.exe /info, then reagentc.exe /enable. If that errors, check that the boot loader recoverysequence is a real GUID and not zeros |
| 789 | BitLocker preboot PIN modification | Informational, in the PIN modification task category. Its presence means someone is using PINs, which rules out silent enablement |
Reading escrow evidence is a one-liner, and this is the query worth wiring into a proactive remediation detection script.
Step three: the registry, for what policy actually arrived
Microsoft names two subkeys to check when confirming that Intune policy reached the device. Read them together with the FVE key, because they tell you three different things: what the CSP delivered, what the ADMX-backed settings resolved to, and whether device encryption was suppressed outright.
The PolicyManager key is the one that answers "did the policy arrive at all". If that key is absent, no BitLocker CSP policy has ever reached the device, and every other check is downstream of that. If PreventDeviceEncryption exists and is set to 1, automatic device encryption has been suppressed by the image or the manufacturer, and only your policy can encrypt the machine.
Step four: the CSP status bitmask, which names the exact failure
The BitLocker CSP exposes Status/DeviceEncryptionStatus, and this is the most precise diagnostic Microsoft publishes. Zero means compliant. Anything else is a bitmask where each bit names one specific reason. The Intune encryption report surfaces these as its Status details field, so the same list explains both the device and the portal.
| Bit | What it means | First thing to check |
|---|---|---|
| 0 | Policy requires user consent to launch the wizard, and the user did not consent | AllowWarningForOtherDiskEncryption is not 0, so encryption is not silent |
| 1 | The encryption method of the OS volume does not match policy | The race was lost. Compare the volume method to EncryptionMethodWithXtsOs. Fixing it needs decryption |
| 2 | The OS volume is unprotected | Encryption was suspended or never completed on the OS drive |
| 3 | Policy requires a TPM-only protector but TPM protection is not used | An interactive protector exists where a bare TPM protector was required |
| 4, 5, 6 | Policy requires TPM+PIN, TPM+startup key, or TPM+PIN+startup key, and it is missing | These three mean you are not configured for silent encryption at all |
| 7 | Policy requires a TPM protector but a TPM is not used | TPM disabled in firmware, or the policy allows BitLocker without a TPM |
| 8 | Recovery key backup failed | Go straight to event 846. Also check the 200-key-per-device Entra limit |
| 9 | A fixed drive is unprotected | Policy applied but fixed drive encryption was suspended or incomplete |
| 10 | The encryption method of the fixed drive does not match policy | The fixed drive version of bit 1 |
| 11 | Encryption needs an administrator sign-in, or AllowStandardUserEncryption set to 1 | This is the standard-user trap. Set the node, and remember it needs the warning suppressed too |
| 12 | Windows Recovery Environment is not configured | Event 854. Run reagentc.exe /info |
| 13 | A TPM is not available, is disabled in the registry, or the OS is on a removable drive | Event 853. Enable the TPM in firmware |
| 14 | The TPM is not ready for BitLocker | The TPM is present but may need initialising |
| 15 | The network is not available, which recovery key backup requires | Escrow cannot complete offline. Check connectivity during OOBE |
| 16, 17 | The full versus used-space-only encryption type of the OS or fixed drive does not match policy | You set SystemDrivesEncryptionType after the device had already encrypted |
Step five: audit the whole fleet, not one device
One device tells you the mechanism. The fleet tells you the scale. The Intune encryption report is the front door, and it is exportable to CSV from the report pane. Behind it, Microsoft Graph exposes the same data as a collection you can query and group.
The useful field on each record is advancedBitLockerStates, which carries the same failure vocabulary as the bitmask above in readable form. Group your unencrypted Windows devices by it and the pattern usually falls out in one pass: a pile of loggedOnUserNonAdmin means the standard-user node is missing; a pile of recoveryKeyBackupFailed means escrow, not encryption, is your problem; windowsRecoveryEnvironmentNotConfigured means your image is the problem; and osVolumeEncryptionMethodMismatch is the timing race, quantified.
managedDeviceEncryptionStates is a beta resource, and Microsoft states that beta APIs are subject to more frequent change. Two more caveats on the report itself: it can take up to 24 hours for Intune to report a device's encryption status or a change to it, and for Windows devices the encryption status field looks only at the OS drive, not at fixed drives. Do not treat a fresh export as real-time truth.The fix: make the policy land before the disk does
The fix has two halves, and doing only one of them is how most people end up here. The first half is the disk encryption policy itself. The second half is the ESP that gives it time to arrive.
Half one: the disk encryption policy
- Sign in to the Microsoft Intune admin center.
- Select Endpoint security, then under Manage select Disk encryption.
- Select + Create Policy. Set Platform to Windows and Profile to BitLocker, then select Create.
- Give the profile a name, then select Next.
- Set Require Device Encryption to Enabled.
- Set Allow Warning For Other Disk Encryption to Disabled. Doing this reveals the next setting.
- Set Allow Standard User Encryption to Enabled. Skip this and any device whose enrolling user is a standard user will not encrypt.
- Expand BitLocker Drive Encryption and set Choose drive encryption method and cipher strength to Enabled, then pick a method for all three drive types: fixed data drives, operating system drive, and removable data drives.
- Expand Operating System Drives. Set Require additional authentication at startup to Enabled, which reveals the four TPM controls.
- Set Configure TPM startup to Allow TPM or Require TPM. Set Configure TPM startup PIN, Configure TPM startup key, and Configure TPM startup key and PIN all to the corresponding Do not allow option.
- Still under Operating System Drives, configure the recovery options so that recovery information is saved to Entra ID and BitLocker does not enable until that backup succeeds.
- Optionally set Enforce drive encryption type on operating system drives to Enabled and choose full or used-space-only, if you need to override the hardware-determined default.
- Optionally set Configure Recovery Password Rotation to enable rotation on use.
- On Assignments, target the device group containing your Autopilot devices. Microsoft is explicit that this must be a device group and not a user group.
- Review and save.
If you are on the older device configuration template rather than endpoint security, the equivalent settings live under Windows Encryption in the Endpoint protection profile, with different names: Warning for other disk encryption set to Block, and Allow standard users to enable encryption during Microsoft Entra join set to Allow.
Half two: the Enrollment Status Page
- Go to Devices, expand Device onboarding, and select Enrollment.
- On the Windows tab, under Windows Autopilot, select Enrollment Status Page.
- Select Create, or edit the default profile if you would rather not add another.
- Set Show app and profile configuration progress to Yes. Without this the ESP does not appear, and the window your policy needs never opens.
- Set Block device use until all apps and profiles are installed to Yes. This is the setting that keeps the device in the ESP long enough.
- Review the time-out value. The default is 60 minutes. Raise it if your device-phase app set is large.
- Decide on Allow users to use device if installation error occurs. Setting it to Yes gives users an escape hatch out of the ESP, which is also an escape hatch out of the encryption window.
- On Assignments, target the same Autopilot device group. Remember that in pre-provisioning and self-deploying scenarios, Intune only applies profiles targeted at devices.
- Review and create. If you have multiple ESP profiles, check the priority order, because the highest-priority device-targeted profile wins.
What to do about the devices that already lost the race
For devices that are unencrypted, fix the prerequisite the bitmask or event log named, then let the policy re-evaluate on the next sync. Nothing needs to be destroyed.
For devices encrypted with the wrong algorithm or the wrong type, the honest answer is that there is no in-place fix. Microsoft says it twice, once for the algorithm and once for the encryption type: the device must be decrypted before the new setting can apply, and changing the type has no effect if the drive is already encrypted or encryption is in progress. Plan that as a wipe-and-reprovision wave rather than a policy tweak, and make sure the new policy and the ESP are both in place before the devices come back.
Proof it worked: what a correctly encrypted device looks like
The companion script for this post is Get-AutopilotBitLockerReadiness.ps1. It is read-only, it never prints a recovery password or a key protector identifier, and it aborts with a clear message rather than reporting a misleadingly clean result if any query it depends on fails. It checks the platform prerequisites, the volume state, the escrow evidence, the delivered policy, and the encryption-method comparison that exposes the timing race.
That output block is illustrative rather than a capture from a production Autopilot device, and it is labelled as such deliberately. The script itself was run and validated on Windows PowerShell 5.1 and PowerShell 7, with zero parse errors and no non-ASCII characters, but the values above represent the healthy shape rather than any real machine.
Three signals in that output prove the race was won. The encryption method on the volume equals the method in policy, which can only happen if the policy arrived before BitLocker was first enabled. The protector list is exactly Tpm plus RecoveryPassword, with nothing interactive, which is the fingerprint of silent enablement rather than a wizard. And there is an 845 with no 846, which means a recoverable key genuinely exists in Entra ID rather than merely being expected to.
Finish in the portal, because the device view and the tenant view have to agree before you close the ticket.
One last honest caveat. Nothing on the device records the exact moment an Intune policy arrived relative to an ESP phase boundary. Every check in this article is evidence, not proof. A matching encryption method and a clean escrow trail is a very strong indicator that the ordering worked, and that is the most you can get from the device alone. Cross-check the tenant report before you declare a fleet clean.
References
- Setting the BitLocker encryption algorithm for Windows Autopilot devices - the ordering statement that BitLocker is enabled after the device setup portion of the ESP, and that without an ESP the BitLocker policy does not apply before encryption starts.
- Encrypt Windows devices with BitLocker using Intune - the full silent-encryption prerequisite list, the required settings for both policy types, the TPM startup guidance, the encryption-type behaviour, and the 200-keys-per-device Entra limit.
- BitLocker CSP - every node used here, including the
AllowStandardUserEncryptiondependency onAllowWarningForOtherDiskEncryption, the escrow endpoint order, and the fullStatus/DeviceEncryptionStatusbitmask. - BitLocker overview - device encryption, the clear-key behaviour, the local-accounts-remain-unprotected statement, and the logic that delays encryption until after the ESP device configuration phase.
- Configure BitLocker - the CSP-to-GPO mapping for every setting, including the four that are documented as GPO not available.
- Enforcing BitLocker policies by using Intune: known issues - events 853, 854, 851, 846 and 778, the Secure Boot UEFI variable error, the HSTI and Modern Standby enforcement-type table, and the two registry subkeys to check.
- BitLocker issues troubleshooting - the event log channel names, the data-collection command set, and the prerequisite checklist.
- BitLocker drive encryption in Windows 11 for OEMs - the automatic device encryption hardware requirements, the PCR 7 detail, and the Windows 11 24H2 removal of the HSTI, Modern Standby and DMA prerequisites.
- Set up the Enrollment Status Page - the three ESP phases, the blocking settings, and the profile priority order.
- View report details for encryption status of devices - the encryption report columns, the readiness definitions, the 24-hour reporting lag, and the OS-drive-only caveat.
- managedDeviceEncryptionState resource type (beta) - the property list and the full
advancedBitLockerStatesenumeration used for the fleet audit. - Get-BitLockerVolume - the property list, including
ProtectionStatus,VolumeStatus,EncryptionMethodandKeyProtector.
Two community deep-dives are worth reading alongside the official documentation. Both were checked and are genuinely on this topic.
| Author | Article | Why it is worth reading |
|---|---|---|
| Rudy Ooms (MVP) | 0x80072f8f: A BitLocker Odyssey | A deep dive into one specific escrow failure, where TPM 2.0 firmware could not handle RSA-PSS during the TLS handshake to the device registration endpoint, so the recovery key backup failed and encryption never armed. Good field detail on how an escrow failure presents. |
| MSEndpointMgr | Silently enable BitLocker for Hybrid Azure AD joined devices using Windows Autopilot | Covers the hybrid-join gap with a Win32-app-delivered approach that creates the TPM and recovery password protectors and escrows to the device object, plus the ESP blocking configuration that makes the timing work. |
The companion read-only script for this post is Get-AutopilotBitLockerReadiness.ps1. It reads only the documented locations listed above, never prints a recovery password or key identifier, prompts before installing anything, and exits with an explicit failure rather than a clean-looking empty result if a query it relies on cannot complete.
Download it from Imran76Awan/Windows-Autopilot-Scripts — no sign-in required. It is read-only: it reports and never changes a device or anything in Intune. Validate it in your own environment before relying on the output.