Entra ID Hybrid Join Troubleshooting: How to Diagnose and Fix Hybrid Azure AD Join Failures Using dsregcmd and the Hybrid Join Event Logs

Retool's new app builder is where AI-generated code ships safely
Building apps with AI is easy. Getting them to production safely is another story.
Hybrid join failures are especially frustrating because the failure is not always visible to the user. The device is domain-joined and appears healthy from the on-premises perspective. The Conditional Access policy requires a compliant or hybrid-joined device. The device is not registered in Entra ID. The user gets an access blocked page with an error they cannot interpret. Diagnosing requires checking three separate systems: the device itself (dsregcmd), Azure AD Connect, and the Entra ID device registration service. This guide provides the exact sequence.
The dsregcmd Diagnostic: What Each Field Means
Run dsregcmd as the affected user (not as administrator, not as SYSTEM -- user context shows the user-specific Primary Refresh Token state):
dsregcmd /status
Key sections and what they mean:
Device State section:
AzureAdJoined: YES-- The device has successfully registered with Entra IDAzureAdJoined: NO-- Device is NOT registered. This is the failure state.DomainJoined: YES-- Device is joined to on-premises AD (expected for hybrid join)EnterpriseJoined: NO-- Expected (this is for workplace join, not hybrid join)
User State section (run as user, not SYSTEM):
NgcSet: YES-- Windows Hello for Business credential is configuredWorkplaceJoined: NO-- Expected for hybrid joined devices (YES here would indicate an older workplace join registration conflict)PRT: YES-- Primary Refresh Token is present (required for SSO)PRT: NO-- PRT is absent. Sign-in to Azure resources will fail or require interactive MFA every time.
Tenant Details section:
TenantNameandTenantId-- Verify these match your expected Entra ID tenantAuthCodeUrl-- Should point to login.microsoftonline.com for public cloud
If AzureAdJoined: NO, the device has not completed registration. The cause is in one of five places: SCP, network, Azure AD Connect sync, duplicate device object, or the device certificate.
Service Connection Point: The Most Common Failure
The Service Connection Point (SCP) is an AD object that tells domain-joined devices which Entra ID tenant to register with. If the SCP is missing or misconfigured, devices cannot discover the registration endpoint and hybrid join fails silently.
Verify the SCP from a domain-joined machine:
# Check SCP in AD
$scp = New-Object System.DirectoryServices.DirectoryEntry
$scp.Path = "LDAP://CN=62a0ff2e-97b9-4513-943f-0d221bd30080,CN=Device Registration Configuration,CN=Services," + (Get-ADRootDSE).configurationNamingContext
$scp.Keywords
Expected output:
azureADName:yourcompany.onmicrosoft.com
azureADId:your-tenant-guid
If this returns empty or an error, the SCP does not exist. Create it via Azure AD Connect:
- Open the Azure AD Connect configuration wizard
- Go to Configure device options
- Select Configure Hybrid Azure AD join
- Run the SCP configuration step
Alternatively, use the AAD Connect SCP script directly:
Import-Module "C:\Program Files\Microsoft Azure Active Directory Connect\AdPrep\AdSyncPrep.psm1"
Initialize-ADSyncDomainJoinedComputerSync -AdConnectorAccount domain\aadconnect-account -AzureADCredentials (Get-Credential)
After SCP creation, devices need to complete the hybrid join process. This triggers during user logon (not on the machine logon event). Log the user off and back on, or wait for the next scheduled task to run.
Briefings like this, every morning before 9am.
Threat intel, active CVEs, and campaign alerts, distilled for practitioners. 50,000+ subscribers. No noise.
Azure AD Connect Sync Requirements for Hybrid Join
Azure AD Connect must synchronize computer objects from AD to Entra ID for hybrid join to work. Verify sync is running correctly:
# Check Azure AD Connect sync status
Get-ADSyncConnectorRunStatus
# Check last successful sync time
Get-ADSyncScheduler | Select-Object CurrentlyRunning, LastSuccessfulSyncCycleStartTimestamp, NextSyncCyclePolicyType
# Check for sync errors on computer objects
Get-ADSyncAADComplianceReport
For a specific computer object that is not appearing in Entra ID:
# Verify the computer is in scope for Azure AD Connect
Get-ADComputer -Identity COMPUTERNAME -Properties ObjectGUID, DistinguishedName |
Select-Object Name, ObjectGUID, DistinguishedName
Cross-reference the ObjectGUID with the Entra ID device list:
Connect-MgGraph -Scopes "Device.Read.All"
Get-MgDevice | Where-Object { $_.OnPremisesSecurityIdentifier -eq (Get-ADComputer COMPUTERNAME).SID }
If the computer object is in the correct OU and not showing in Entra ID after 72 hours:
- Check that the OU containing the computer is within the Azure AD Connect synchronization scope (not filtered out)
- Check for sync errors in the Synchronization Service Manager
- Force a delta sync:
Start-ADSyncSyncCycle -PolicyType Delta
Device writeback must be enabled for hybrid join to work in environments using Conditional Access device requirements. Verify in Azure AD Connect: Optional features > Device writeback = Enabled.
Network Connectivity Requirements for Device Registration
Hybrid join requires the device to reach the Entra ID device registration endpoint during the registration process. If the device is behind a proxy or firewall that blocks the required endpoints, registration will fail.
Required endpoints for hybrid join:
https://enterpriseregistration.windows.net-- Device registration servicehttps://login.microsoftonline.com-- Authenticationhttps://device.login.microsoftonline.com-- Device-specific loginhttps://autologon.microsoftazuread-sso.com-- Seamless SSO
Test connectivity from the device:
# Test connectivity to device registration endpoint
Test-NetConnection -ComputerName "enterpriseregistration.windows.net" -Port 443
# Check if a proxy is required and configured
[System.Net.WebProxy]::GetSystemWebProxy().GetProxy("https://enterpriseregistration.windows.net")
If a proxy is required, configure it for the SYSTEM account (the device registration task runs as SYSTEM, not as the logged-on user):
netsh winhttp set proxy proxy-server="http://proxy.company.com:8080" bypass-list="*.company.com;localaddress"
The userproxy setting (configured via Internet Options) applies to user-context operations. Device registration runs in SYSTEM context and requires the SYSTEM-level proxy configuration via netsh.
For conditional access environments where devices register from managed corporate networks, verify that the corporate network's proxy or firewall does not perform SSL inspection on the device registration endpoints. SSL inspection breaks the certificate validation during device registration in some configurations.
Primary Refresh Token (PRT) Failures and SSO Issues
Even when AzureAdJoined shows YES, users may experience SSO failures if the Primary Refresh Token (PRT) is absent or invalid. The PRT is issued to the user at logon time after hybrid join succeeds.
Diagnose PRT state:
dsregcmd /status
Look in the User State section for:
PRT: YES-- PRT is presentPrtUpdateTime-- When the PRT was last refreshed (should be recent)PrtExpiryTime-- When the PRT expires (typically 14 days from issue)
If PRT is NO:
- Verify the user's on-premises AD account is synced to Entra ID: A user whose AD account is not synced cannot get a PRT even if the device is hybrid joined
- Check for duplicate device objects: Multiple device objects in Entra ID for the same physical device can cause PRT issues. In Entra ID > Devices, search for the device name and check for duplicates
- Verify the device certificate is valid: The hybrid join device certificate (issued during registration) must be valid. Check in certmgr.msc for a certificate in Personal > Certificates issued by
MS-Organization-Access. If expired or missing, re-register the device - Re-trigger PRT acquisition: Log off and log back on with domain credentials while connected to the corporate network (or VPN). The PRT is acquired during logon against an in-scope DC
For devices that are hybrid joined but not getting PRT for specific users (other users on the same device get PRT): the issue is user-specific, not device-specific. Check the user's UPN matches their Entra ID UPN exactly (including domain suffix).
The bottom line
Hybrid join failures almost always trace to one of five causes: missing or misconfigured SCP, Azure AD Connect sync scope excluding the device's OU, network connectivity to device registration endpoints blocked by proxy, device writeback disabled in Azure AD Connect, or a PRT acquisition failure at user logon. Start every troubleshooting session with dsregcmd /status as the affected user, verify SCP existence via LDAP, check Azure AD Connect sync status for the specific computer object, and confirm network connectivity to enterpriseregistration.windows.net. If the root cause is sync scope, the Entra Connect sync error troubleshooting guide covers the most common errors that prevent device objects from reaching Entra ID.
Frequently asked questions
What is the difference between Entra ID Hybrid Join and Entra ID Join?
Entra ID Join (formerly Azure AD Join) is for devices that are joined only to Entra ID with no on-premises Active Directory join. It is the modern approach for cloud-first organizations. Hybrid Join is for devices that are joined to both on-premises AD and Entra ID simultaneously, used when the organization has both on-premises and cloud resources and needs devices to authenticate to both. Hybrid joined devices get GPO management from on-premises AD and Intune/Conditional Access benefits from Entra ID. Pure Entra ID joined devices are managed entirely from the cloud.
How do I verify that a device is visible in Entra ID after hybrid join?
In the Entra admin center, go to Identity > Devices > All devices and search for the device name. A successfully hybrid-joined device will show Join Type as 'Hybrid Azure AD joined' and Registered as a timestamp. The device should also show in Intune if Intune device enrollment is configured. Alternatively, use PowerShell: `Connect-MgGraph -Scopes 'Device.Read.All'` then `Get-MgDevice -Filter "displayName eq 'DEVICENAME'"` and check the `TrustType` field -- it should be `ServerAd` for hybrid joined devices.
Can Windows 10 and Windows 11 devices use the same hybrid join configuration?
Yes. Hybrid join works on Windows 10 (1903 and later) and Windows 11 using the same Azure AD Connect configuration and SCP. The device registration process is the same on both OS versions. The main difference is Windows 11's additional Secure Boot and TPM requirements for Windows Hello for Business, which are enforced at the Windows 11 system level rather than at the hybrid join configuration level.
How long does hybrid join take to complete after the SCP is configured?
After the SCP is configured and Azure AD Connect sync is running, existing domain-joined devices will complete hybrid join on their next user logon while connected to the corporate network. The registration process runs as a background task during logon. For most devices, hybrid join completes within 1-5 minutes of the logon event. The resulting device object appears in Entra ID after the next Azure AD Connect delta sync (every 30 minutes by default). End-to-end from logon to visible-in-Entra-ID is typically 30-90 minutes.
What is the difference between hybrid join and Entra ID registration for Windows devices?
Hybrid join is the full domain join relationship where the device has both an on-premises AD computer account and an Entra ID device object, established via Azure AD Connect sync. It is used for domain-joined machines that need to satisfy Conditional Access device compliance requirements. Entra ID registration (also called workplace join) is a lighter-weight relationship where a personal or non-domain-joined device registers an identity in Entra ID without a full domain trust. Registered devices can satisfy Conditional Access registered device requirements but not compliant device requirements unless they are also enrolled in Intune. For corporate Windows machines, hybrid join or full Entra ID join are the recommended states; Entra ID registration alone is primarily for BYOD scenarios.
How do I troubleshoot Entra ID hybrid join failures for Windows devices?
Run dsregcmd /status on the affected device and check the fields: AzureAdJoined (should be YES for Entra ID join), DomainJoined (should be YES for hybrid join), and DeviceAuthStatus (shows the current device authentication state). For hybrid join failures, the most common causes are: Azure AD Connect not syncing the computer object (check AAD Connect sync logs and verify the computer OU is in scope), the Service Connection Point (SCP) not configured in AD for automatic device registration (verify with: Get-ADObject -Filter {objectClass -eq 'serviceConnectionPoint'} -SearchBase 'CN=Configuration,DC=domain,DC=com'), and network connectivity issues between the device and Windows Device Registration Service endpoints (login.microsoftonline.com, device.login.microsoftonline.com). Event ID 304 in the Microsoft-Windows-User Device Registration/Admin event log contains the specific registration error code.
Sources & references
Free resources
Critical CVE Reference Card 2025–2026
25 actively exploited vulnerabilities with CVSS scores, exploit status, and patch availability. Print it, pin it, share it with your SOC team.
Ransomware Incident Response Playbook
Step-by-step 24-hour IR checklist covering detection, containment, eradication, and recovery. Built for SOC teams, IR leads, and CISOs.
Get threat intel before your inbox does.
50,000+ security professionals read Decryption Digest for early warnings on zero-days, ransomware, and nation-state campaigns. Free, daily, no spam.
Unsubscribe anytime. We never sell your data.

Founder & Cybersecurity Evangelist, Decryption Digest
Cybersecurity professional with expertise in threat intelligence, vulnerability research, and enterprise security. Covers zero-days, ransomware, and nation-state operations for 50,000+ security professionals every morning.
Win a $2,495 Black Hat pass.
Full-access to Black Hat USA 2026 in Las Vegas. Subscribe free to enter.
