Skip to main content
COSMICBYTEZLABS
NewsSecurityHOWTOsToolsStudyTraining
ProjectsChecklistsAI RankingsNewsletterStatusTagsAbout
Subscribe

Press Enter to search or Esc to close

News
Security
HOWTOs
Tools
Study
Training
Projects
Checklists
AI Rankings
Newsletter
Status
Tags
About
RSS Feed
Reading List
Subscribe

Stay in the Loop

Get the latest security alerts, tutorials, and tech insights delivered to your inbox.

Subscribe NowFree forever. No spam.
COSMICBYTEZLABS

Your trusted source for IT intelligence, cybersecurity insights, and hands-on technical guides.

429+ Articles
114+ Guides

CONTENT

  • Latest News
  • Security Alerts
  • HOWTOs
  • Projects
  • Exam Prep

RESOURCES

  • Search
  • Browse Tags
  • Newsletter Archive
  • Reading List
  • RSS Feed

COMPANY

  • About Us
  • Contact
  • Privacy Policy
  • Terms of Service

© 2026 CosmicBytez Labs. All rights reserved.

System Status: Operational
  1. Home
  2. HOWTOs
  3. Intune Device Enrollment: Windows Autopilot Setup
Intune Device Enrollment: Windows Autopilot Setup
HOWTOIntermediate

Intune Device Enrollment: Windows Autopilot Setup

Configure Windows Autopilot for zero-touch device deployment. Covers hardware hash import, deployment profiles, ESP configuration, and user-driven enrollment.

Dylan H.

Endpoint Engineering

February 3, 2026
10 min read

Prerequisites

  • Microsoft Intune license (included in M365 E3/E5, EMS)
  • Entra ID P1 or P2
  • Global Administrator or Intune Administrator role
  • Windows 10/11 Pro, Enterprise, or Education devices

Overview

Windows Autopilot transforms device deployment by enabling IT to configure new devices with zero touch. Instead of imaging, Autopilot uses cloud-based configuration to transform devices from factory state to business-ready with minimal user interaction.

Who Should Use This Guide:

  • IT administrators deploying new Windows devices
  • Organizations transitioning from SCCM/ConfigMgr imaging
  • MSPs managing multi-tenant device deployments
  • Enterprises implementing modern device management

Autopilot Deployment Scenarios:

ScenarioUse CaseUser Involvement
User-DrivenStandard deployment for assigned usersUser signs in with corporate credentials
Self-DeployingKiosks, shared devices, digital signageNone - fully automated
Pre-ProvisionedWhite glove for executive devicesIT provisions, user completes
ResetRe-deploy existing enrolled devicesMinimal - retains Autopilot profile

Requirements

Licensing Requirements:

ComponentRequired License
Microsoft IntuneM365 E3/E5, EMS E3/E5, or Intune standalone
Entra ID JoinEntra ID P1 (included in above)
Conditional AccessEntra ID P1 or P2
Windows 11Pro, Enterprise, or Education

Network Requirements:

EndpointProtocolPurpose
*.microsoftonline.comHTTPS/443Entra ID authentication
enterpriseregistration.windows.netHTTPS/443Device registration
*.manage.microsoft.comHTTPS/443Intune enrollment
*.windowsupdate.comHTTPS/443Windows Update
*.delivery.mp.microsoft.comHTTPS/443Delivery Optimization

Architecture

┌────────────────────────────────────────────────────────────────┐
│                  Windows Autopilot Flow                        │
├────────────────────────────────────────────────────────────────┤
│                                                                │
│  ┌─────────────┐    ┌─────────────┐    ┌─────────────┐        │
│  │   Factory   │    │   OEM/CSP   │    │   Intune    │        │
│  │   Device    │───▶│  Registers  │───▶│   Imports   │        │
│  │             │    │ Hardware ID │    │   Device    │        │
│  └─────────────┘    └─────────────┘    └──────┬──────┘        │
│                                               │                │
│                                               ▼                │
│  ┌─────────────┐    ┌─────────────┐    ┌─────────────┐        │
│  │   Device    │    │  Autopilot  │    │  Deployment │        │
│  │  Unboxed    │◀───│   Profile   │◀───│   Profile   │        │
│  │  by User    │    │  Assigned   │    │  Created    │        │
│  └──────┬──────┘    └─────────────┘    └─────────────┘        │
│         │                                                      │
│         ▼                                                      │
│  ┌─────────────┐    ┌─────────────┐    ┌─────────────┐        │
│  │    OOBE     │    │   Entra ID  │    │   Intune    │        │
│  │  Customized │───▶│   Join &    │───▶│   Config    │        │
│  │   Branding  │    │   MFA       │    │   Applied   │        │
│  └─────────────┘    └─────────────┘    └─────────────┘        │
│                                                                │
└────────────────────────────────────────────────────────────────┘

Process

Step 1: Collect Hardware Hashes

Obtain the hardware hash (device ID) for each device to register with Autopilot.

Method 1: PowerShell Script (Existing Devices)

Run on each device to collect the hardware hash:

# Install required module
Install-Script -Name Get-WindowsAutoPilotInfo -Force
 
# Collect hash and export to CSV
Get-WindowsAutoPilotInfo -OutputFile "C:\Temp\AutopilotHWID.csv"

Method 2: From Windows Settings (Single Device)

  1. Open Settings → Accounts → Access work or school
  2. Click Export your management log files
  3. Navigate to C:\Users\Public\Documents\MDMDiagnostics
  4. Open MDMDiagReport.html and find the Hardware Hash

Method 3: OEM Pre-Registration

Request your hardware vendor (Dell, HP, Lenovo) to register devices during ordering:

VendorRegistration Method
DellTechDirect or reseller
HPPartner Ready Portal
LenovoLenovo Device as a Service
MicrosoftSurface for Business

Verification: Hardware hash CSV contains Device Serial Number, Windows Product ID, and Hardware Hash columns.


Step 2: Import Devices to Autopilot

Register devices in Microsoft Intune for Autopilot deployment.

Import via Intune Portal:

  1. Navigate to Microsoft Intune admin center
  2. Go to Devices → Enrollment → Windows → Devices
  3. Click Import
  4. Upload the CSV file with hardware hashes
  5. Click Import and wait for processing

Import via Microsoft Graph PowerShell:

# Connect to Microsoft Graph
Connect-MgGraph -Scopes "DeviceManagementServiceConfig.ReadWrite.All"
 
# Import devices from CSV
$devices = Import-Csv "C:\Temp\AutopilotHWID.csv"
 
foreach ($device in $devices) {
    $params = @{
        "@odata.type" = "#microsoft.graph.importedWindowsAutopilotDeviceIdentity"
        serialNumber = $device.'Device Serial Number'
        hardwareIdentifier = [Convert]::FromBase64String($device.'Hardware Hash')
        productKey = $device.'Windows Product ID'
    }
 
    New-MgDeviceManagementImportedWindowsAutopilotDeviceIdentity -BodyParameter $params
}

Verification: Devices appear in Devices → Windows → Windows enrollment → Devices with "Assigning" or "Assigned" status.


Step 3: Create Dynamic Device Group

Create an Entra ID group for Autopilot devices to target with profiles.

Navigate to: Entra admin center → Groups → New group

Create Dynamic Device Group:

Group type: Security
Group name: Autopilot-Devices
Membership type: Dynamic Device
Dynamic query:
 
(device.devicePhysicalIDs -any (_ -contains "[ZTDId]"))

For Specific Deployment Profile:

(device.enrollmentProfileName -eq "Autopilot-Standard")

For Specific Order ID (Vendor Tag):

(device.devicePhysicalIds -any (_ -contains "[OrderId]:YourOrderID"))

Verification: Group populates with imported Autopilot devices (may take 15-30 minutes).


Step 4: Configure Company Branding

Customize the OOBE experience with organizational branding.

Navigate to: Entra admin center → User experiences → Company branding

Configure Branding Elements:

ElementRecommendation
Sign-in page backgroundCompany logo or branded image (1920x1080)
Banner logoSquare logo (280x60 max)
Square logo darkFor dark backgrounds
Username hint"user@company.com"
Sign-in page textWelcome message or support info

Verification: Visit https://login.microsoftonline.com to preview branding.


Step 5: Create Deployment Profile

Define the Autopilot deployment settings.

Navigate to: Intune → Devices → Enrollment → Deployment Profiles

Create Profile:

  1. Click Create profile → Windows PC
  2. Configure basics:
    • Name: Autopilot-Standard-UserDriven
    • Description: Standard user-driven deployment

Out-of-box experience (OOBE) settings:

SettingUser-DrivenSelf-Deploying
Deployment modeUser-drivenSelf-deploying
Join to Entra ID asEntra ID joinedEntra ID joined
Microsoft Software License TermsHideHide
Privacy settingsHideHide
Hide change account optionsYesYes
User account typeStandardN/A
Allow pre-provisioned deploymentYesYes
Language (Region)Operating system defaultUser select
KeyboardOperating system defaultUser select
Apply device name templateYesYes
Device name templateCORP-%SERIAL%KIOSK-%SERIAL%

Assignments:

  • Assign to Autopilot-Devices dynamic group

CLI Alternative (Microsoft Graph):

$profileParams = @{
    "@odata.type" = "#microsoft.graph.azureADWindowsAutopilotDeploymentProfile"
    displayName = "Autopilot-Standard-UserDriven"
    description = "Standard user-driven deployment"
    language = "os-default"
    extractHardwareHash = $true
    deviceNameTemplate = "CORP-%SERIAL%"
    deviceType = "windowsPc"
    enableWhiteGlove = $true
    outOfBoxExperienceSettings = @{
        hidePrivacySettings = $true
        hideEULA = $true
        userType = "standard"
        deviceUsageType = "singleUser"
        skipKeyboardSelectionPage = $true
        hideEscapeLink = $true
    }
}
 
New-MgDeviceManagementWindowsAutopilotDeploymentProfile -BodyParameter $profileParams

Step 6: Configure Enrollment Status Page (ESP)

Control the deployment experience and ensure apps/policies are installed.

Navigate to: Intune → Devices → Enrollment → Enrollment Status Page

Create ESP Profile:

  1. Click Create
  2. Configure:
    • Name: ESP-Standard
    • Show app and profile configuration progress: Yes
    • Show error when installation exceeds time limit: Yes
    • Show custom message for time limit errors: Yes
    • Error message: Deployment taking longer than expected. Contact IT at support@company.com

Blocking Apps (Wait for installation):

App TypeExamples
Win32 appsMicrosoft 365 Apps, Company Portal
LOB appsCustom business applications
Configuration profilesVPN, Wi-Fi, certificates

Timeout Settings:

SettingRecommended Value
Installation time limit60 minutes
Allow device reset on install failureYes
Allow device use on install failureNo (for critical apps)

Assignments:

  • Assign to Autopilot-Devices or All Devices

Step 7: Assign Required Applications

Ensure critical apps deploy during Autopilot enrollment.

Recommended Autopilot Apps:

ApplicationDeployment TypeRequired During ESP
Microsoft 365 AppsWin32Yes
Company PortalStore appYes
Microsoft DefenderBuilt-inAutomatic
VPN ClientWin32Yes (if required)
Line-of-Business AppsWin32/LOBDepends

Assign Apps as Required:

  1. Navigate to Apps → Windows
  2. Select application
  3. Go to Properties → Assignments
  4. Add Required assignment to Autopilot device group
  5. Enable Make this app required during ESP if available

Step 8: Test Deployment

Validate the Autopilot experience before production rollout.

Reset Test Device:

# From Windows 11 device
# Settings → System → Recovery → Reset this PC → Remove everything → Cloud download
 
# Or via command line
systemreset -cleanpc

OOBE Testing Checklist:

  1. Device boots to customized OOBE with company branding
  2. User enters corporate email, redirected to Entra ID sign-in
  3. MFA prompt appears (if Conditional Access configured)
  4. ESP shows app/profile installation progress
  5. Desktop loads with all required apps installed
  6. Device appears enrolled in Intune

Monitor Deployment:

Navigate to Intune → Devices → Monitor → Autopilot deployments

StatusMeaning
In progressOOBE or ESP currently running
CompletedDeployment successful
FailedError during deployment (check logs)
PendingAwaiting user sign-in

Troubleshooting

Common Issues:

SymptomPossible CauseSolution
Device not recognizedHardware hash not importedRe-import hardware hash; sync Autopilot service
"Something went wrong"Network connectivityVerify firewall allows required endpoints
Profile not applyingAssignment not syncedWait 15-30 mins; force sync in Intune
ESP stuck installingApp installation failureCheck app status in Intune; review logs
MFA loopConditional Access conflictReview CA policies; create exclusion for enrollment

Diagnostic Commands:

# View Autopilot profile on device
Get-Item "HKLM:\SOFTWARE\Microsoft\Provisioning\Diagnostics\AutoPilot"
 
# Check MDM enrollment status
dsregcmd /status
 
# View Autopilot ETL logs
Get-ChildItem "C:\Windows\Logs\MoSetup\UpdateSetupBox*.log"
 
# Export MDM diagnostics
mdmdiagnosticstool.exe -area Autopilot -zip "C:\Temp\AutopilotDiag.zip"

Collect Logs from Failed Deployment:

  1. Press Shift+F10 during OOBE to open command prompt
  2. Run: mdmdiagnosticstool.exe -area Autopilot -zip C:\Temp\logs.zip
  3. Copy ZIP to USB drive for analysis

Security Considerations

Conditional Access for Enrollment:

Create CA policy to require compliant device for enrollment:

Name: Require Compliant Device - Windows Enrollment
Users: All users (exclude break-glass accounts)
Cloud apps: Microsoft Intune Enrollment
Conditions: Device platforms = Windows
Grant: Require device to be marked as compliant

Restrict Who Can Enroll:

Intune → Devices → Enrollment → Device platform restrictions
- Personally owned devices: Block
- Device limit: 5 devices per user

Device Naming Security:

  • Avoid including user names in device templates
  • Use serial numbers or random identifiers
  • Consider CORP-%RAND:4%-%SERIAL:4% format

Verification Checklist

Autopilot Setup:

  • Hardware hashes imported for all devices
  • Dynamic device group created and populating
  • Company branding configured
  • Deployment profile created and assigned
  • ESP profile configured with blocking apps

Pre-Deployment Testing:

  • Test device resets to OOBE
  • Autopilot profile applies automatically
  • User-driven flow works with MFA
  • Required apps install during ESP
  • Device compliant in Intune post-enrollment

Production Readiness:

  • Conditional Access policies reviewed
  • Help desk trained on user experience
  • Documentation updated for users
  • Rollback plan documented

Next Steps

After implementing Autopilot:

  1. Configure Windows Update for Business - Manage update rings
  2. Deploy Microsoft Defender for Endpoint - Onboard devices for EDR
  3. Implement Compliance Policies - Enforce security baselines
  4. Set Up App Protection Policies - Protect corporate data

References

  • Windows Autopilot Documentation
  • Autopilot Networking Requirements
  • Enrollment Status Page
  • Autopilot Troubleshooting

Last Updated: February 2026

#Intune#Autopilot#Windows#Endpoint Management#Microsoft 365#Zero Touch

Related Articles

Microsoft 365 Security and Compliance Configuration Guide

Harden your Microsoft 365 tenant with security baselines, conditional access policies, data loss prevention, audit logging, and compliance configurations...

7 min read

IT Service Dashboards with PowerShell Universal

Build interactive IT service management dashboards using PowerShell Universal. Create real-time client portals, automated ticketing views, and...

6 min read

Microsoft Defender for Endpoint: Configuration and

Deploy and configure Microsoft Defender for Endpoint. Covers onboarding methods, ASR rules, network protection, EDR in block mode, and automated investigation.

14 min read
Back to all HOWTOs