You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
# End-to-end troubleshooting of Microsoft Entra Connect objects and attributes
12
12
13
13
This article is intended to establish a common practice for how to troubleshoot synchronization issues in Microsoft Entra ID.
14
+
14
15
This method is used when an object or attribute fails to synchronize with Microsoft Entra ID directory, and no errors are shown in the sync engine, Application event viewer logs, or Microsoft Entra logs. It's easy to get lost in the details if there's no obvious error. However, by using best practices, you can isolate the issue and provide insights for Microsoft Support engineers.
15
16
16
17
As you apply this troubleshooting method to your environment, over time, you'll be able to do the following steps:
@@ -36,17 +37,19 @@ For a better understanding of this article, first read the following prerequisit
36
37
## Ineffective troubleshooting practices
37
38
38
39
The `onPremisesSyncEnabled` attribute in Microsoft Entra ID controls whether the tenant is prepared to accept synchronization of objects from on-premises AD DS.
39
-
There's an habit of disabling DirSync on the tenant while troubleshooting object or attribute synchronization issues. It's easy to turn off directory synchronization by using Graph or PowerShell, however this process can be disruptive.
40
40
41
-
Disabling DirSync at the tenant level, triggers a complex and lengthy backend operation to transfer the Source of Authority (SoA) from local Active Directory to Microsoft Entra ID and Exchange Online for all the synced objects on the tenant. This operation is necessary to convert each object from `onPremisesSyncEnabled=True` to cloud-only objects (`onPremisesSyncEnabled=<null>`), and clean up all the shadow properties that are synced from on-premises AD DS (for example, ShadowUserPrincipalName and ShadowProxyAddresses). Depending on the size of the tenant, this operation can take more than 72 hours. Also, it's not possible to predict when the operation finishes.
42
-
Never use this method to troubleshoot a sync issue because such operation can cause more harm and doesn't fix the root cause. You're blocked from enabling DirSync again until this disablement operation is complete. Also, after you re-enable DirSync, the Entra Connect server must match again all the on-premises objects with existent Microsoft Entra ID objects.
41
+
It is common to disable DirSync on the tenant while troubleshooting object or attribute synchronization issues. Directory synchronization can be turned off using Graph or PowerShell, however this process might cause disruptions.
42
+
43
+
Disabling DirSync at the tenant level triggers a complex and lengthy backend operation to transfer the Source of Authority (SoA) from local Active Directory to Microsoft Entra ID and Exchange Online for all the synced objects on the tenant. This operation is necessary to convert each object from `onPremisesSyncEnabled=True` to cloud-only objects (`onPremisesSyncEnabled=<null>`), and clean up all the shadow properties that are synced from on-premises AD DS (for example, `ShadowUserPrincipalName` and `ShadowProxyAddresses`). This operation might take over 72 hours depending on the tenant's size, and its completion time can't be predicted.
44
+
45
+
Don't use this method to troubleshoot a sync issue because such operation can cause more harm and doesn't fix the root issue. You can't enable DirSync again until this disablement operation is complete. After re-enabling DirSync, the Entra Connect server must match all on-premises objects with existing Microsoft Entra ID objects.
43
46
44
-
The only scenarios where disabling DirSync is supported, are:
47
+
Disabling DirSync is supported only in the following scenarios:
45
48
46
49
- You're decommissioning your on-premises synchronization server, and you want to continue managing your identities entirely from the cloud instead of from hybrid identities.
47
50
- You have some synced objects in the tenant that you want to keep as cloud-only in Microsoft Entra ID and remove from on-premises AD permanently.
48
51
- You're currently using a custom attribute as the SourceAnchor in Entra Connect (for example, employeeId), and you're re-installing AADC to start using **ms-Ds-Consistency-Guid/ObjectGuid** as the new SourceAnchor attribute (or vice versa).
49
-
-There are scenarios in your mailbox migration strategy that could lead to potential issues.
52
+
-Certain scenarios within your mailbox migration strategy might result in potential issues.
50
53
51
54
In some situations, you might have to temporarily stop synchronization or manually control Entra Connect sync cycles. For example, you might have to pause synchronization to be able to run one sync step at a time. Instead of disabling DirSync, you can just stop the sync scheduler by running the following cmdlet:
52
55
@@ -169,9 +172,8 @@ The best way to troubleshoot permissions is to use the "Effective Access" featur
169
172
170
173
> [!important]
171
174
> Troubleshooting AD permissions can be difficult because a change in ACLs doesn't take immediate effect. Always consider that such changes are subject to AD replication.
172
-
>
173
-
> For example:
174
-
**Troubleshooting summary**
175
+
176
+
**Troubleshooting summary:**
175
177
176
178
- Identify which domain controller is used.
177
179
- Use preferred domain controllers to target the same domain controller.
@@ -182,7 +184,7 @@ The best way to troubleshoot permissions is to use the "Effective Access" featur
182
184
- Temporarily add the ADCA to the Enterprise admins or Domain admins, and restart the ADSync service.
183
185
184
186
> [!WARNING]
185
-
> Don't use this as a permanent solution for permissions issues. After determining the permissions issue, remove the ADCA from any highly privileged groups, and provide the required AD permissions directly to the ADCA.
187
+
> Don't use this as a permanent solution for permissions issues. After determining the permissions issue, remove the ADCA from any highly privileged groups, and grant the required AD permissions directly to the ADCA.
186
188
187
189
> [!NOTE]
188
190
> Engage Directory Services or a network support team to help you troubleshoot the situation.
@@ -234,14 +236,14 @@ Troubleshooting summary
234
236
235
237
This situation doesn't occur as commonly for users and groups. However, if all the objects of a specific object type are missing in ADCS, it might be useful to examine which object types enabled in ADDS Connector configuration.
236
238
237
-
Use the **Get-ADSyncConnector** cmdlet to retrieve the object types that are enabled on the Connector, as shown in the next image.
239
+
Use the `Get-ADSyncConnector` cmdlet to retrieve the object types that are enabled on the Connector, as shown in the next image.
238
240
239
241
```PowerShell
240
242
$connectorName = "Contoso.com"
241
243
(Get-ADSyncConnector | where Name -eq $connectorName).ObjectInclusionList`
242
244
```
243
245
244
-
The following list shows the object types that should be enabled by default (**publicFolder** object type is present only when the Mail Enabled Public Folder feature is enabled):
246
+
The following list shows the object types that should be enabled by default (The `publicFolder` object type exists only when the Mail Enabled Public Folder feature is enabled.):
245
247
246
248
:::image type="content" source="media/troubleshoot-aad-connect-objects-attributes/get-adsyncconnector-objects.png" alt-text="Screenshot show the Get-ADSyncConnector object types." border="false":::
247
249
@@ -252,17 +254,17 @@ The following list shows the object types that should be enabled by default (**p
252
254
253
255
To check for enabled attributes in ADDS Connector, use the Synchronization Manager, as shown in the next image, or run the following PowerShell cmdlet:
254
256
255
-
```PowerShell
257
+
```PowerShell
256
258
$connectorName = "Contoso.com"
257
259
(Get-ADSyncConnector | where Name -eq $connectorName).AttributeInclusionList
258
-
```
260
+
```
259
261
260
262
:::image type="content" source="media/troubleshoot-aad-connect-objects-attributes/ad-connector-sync-manager.png" alt-text="Screenshot of AD Connector Synchronization Manager.":::
261
263
262
264
> [!IMPORTANT]
263
265
> Including or excluding object types or attributes in the Synchronization Service Manager isn't supported.
264
266
265
-
Troubleshooting summary
267
+
**Troubleshooting summary:**
266
268
267
269
- Check the [Microsoft Entra app and attribute filtering](/azure/active-directory/hybrid/how-to-connect-install-custom#azure-ad-app-and-attribute-filtering) feature
268
270
- Verify that the object type is included in ADCS.
@@ -310,35 +312,35 @@ The synchronization between ADCS and MV occurs on the delta/full synchronization
310
312
311
313
-**Check the lineage of the ADCS object**
312
314
313
-
You can retrieve the failing object from the ADCS by searching on "DN or Anchor" in "Search Connector Space." On the **Lineage** tab, you will probably see that the object is a **Disconnector** (no links to MV), and the lineage is empty. Also, check whether the object has any errors, in case there is a sync error tab.
315
+
You can retrieve the failing object from the ADCS by searching on "DN or Anchor" in "Search Connector Space." On the **Lineage** tab, you will probably see that the object is a **Disconnector** (no links to MV), and the lineage is empty. Also, check whether the object has any errors, in case there is a sync error tab.
314
316
315
-
:::image type="content" source="media/troubleshoot-aad-connect-objects-attributes/connector-space-object-properties.png" alt-text="Screenshot of the Connector Space Object Properties in A D C S.":::
317
+
:::image type="content" source="media/troubleshoot-aad-connect-objects-attributes/connector-space-object-properties.png" alt-text="Screenshot of the Connector Space Object Properties in A D C S.":::
316
318
317
319
-**Run a preview on the ADCS object**
318
320
319
-
Select **Preview** > **Generate Preview** > **Commit Preview** to see whether the object is projected to MV. If that's the case, then a full sync cycle should fix the issue for other objects in the same situation.
321
+
Select **Preview** > **Generate Preview** > **Commit Preview** to see whether the object is projected to MV. If that's the case, then a full sync cycle should fix the issue for other objects in the same situation.
320
322
321
-
:::image type="content" source="media/troubleshoot-aad-connect-objects-attributes/adcs-object-preview.png" alt-text="Screenshot of the A D C S object preview screen." border="false":::
323
+
:::image type="content" source="media/troubleshoot-aad-connect-objects-attributes/adcs-object-preview.png" alt-text="Screenshot of the A D C S object preview screen." border="false":::
322
324
323
-
:::image type="content" source="media/troubleshoot-aad-connect-objects-attributes/adcs-source-object-details.png" alt-text="Screenshot of the Source Object Details screen in A D C S.":::
325
+
:::image type="content" source="media/troubleshoot-aad-connect-objects-attributes/adcs-source-object-details.png" alt-text="Screenshot of the Source Object Details screen in A D C S.":::
324
326
325
327
-**Export the object to XML**
326
328
327
-
For a more detailed analysis (or for offline analysis), you can collect all the database data that's related to the object by using `Export-ADSyncToolsObjects` cmdlet. This exported information will help determine which rule is filtering out the object. In other words, which Inbound Scoping Filter in the Provisioning Sync Rules is preventing the object from being projected to the MV.
329
+
For a more detailed analysis (or for offline analysis), you can collect all the database data that's related to the object by using `Export-ADSyncToolsObjects` cmdlet. This exported information will help determine which rule is filtering out the object. In other words, which Inbound Scoping Filter in the Provisioning Sync Rules is preventing the object from being projected to the MV.
328
330
329
-
Here are some examples of `Export-ADSyncToolsObjects` syntax:
331
+
Here are some examples of the`Export-ADSyncToolsObjects` syntax:
> To read the exported data use `Import-Clixml <filename>.xml`
342
+
> [!TIP]
343
+
> To read the exported data, use the `Import-Clixml <filename>.xml` cmdlet.
342
344
343
345
#### Troubleshooting summary (objects)
344
346
@@ -526,7 +528,6 @@ Multiple components and processes that are involved in importing and exporting d
526
528
- Connectivity to the internet
527
529
- Internal firewalls and ISP connectivity (for example, blocked network traffic)
528
530
- The Microsoft Entra Gateway in front of DirSync Webservice (also known as the AdminWebService)
529
-
530
531
- The DirSync Webservice API
531
532
- The Microsoft Entra Core directory service
532
533
@@ -540,20 +541,20 @@ Fortunately, the issues that affect these components usually generate an error i
540
541
541
542
-**Mobile attribute with DirSyncOverrides**
542
543
543
-
When the Admin uses the legacy MSOnline or AzureAD PowerShell modules, or if the user goes to the Office Portal and updates the **Mobile** attribute, the updated phone number will be overwritten in Microsoft Entra ID despite the object being synced from on-premises AD (`onPremisesSyncEnabled=true`).
544
+
When the Admin uses the legacy MSOnline or AzureAD PowerShell modules, or if the user goes to the Office Portal and updates the `Mobile` attribute, the updated phone number will be overwritten in Microsoft Entra ID despite the object being synced from on-premises AD (`onPremisesSyncEnabled=true`).
544
545
545
-
Together with this update, Microsoft Entra ID also sets a DirSyncOverrides on the object to flag that this user has the mobile phone number "overwritten" in Microsoft Entra ID. From this point on, any update to the mobile attribute that originates from on-premises will be ignored because this attribute will no longer be managed by on-premises AD.
546
+
Together with this update, Microsoft Entra ID also sets a `DirSyncOverrides` on the object to flag that this user has the mobile phone number "overwritten" in Microsoft Entra ID. From this point on, any update to the mobile attribute that originates from on-premises will be ignored because this attribute will no longer be managed by on-premises AD.
546
547
547
-
For more information about the BypassDirSyncOverrides feature and how to restore synchronization of Mobile and otherMobile attributes from Microsoft Entra ID to on-premises Active Directory, see [How to use the BypassDirSyncOverrides feature of a Microsoft Entra tenant](/azure/active-directory/hybrid/how-to-bypassdirsyncoverrides).
548
+
For more information about the *BypassDirSyncOverrides* feature and how to restore synchronization of `Mobile` and `otherMobile` attributes from Microsoft Entra ID to on-premises Active Directory, see [How to use the BypassDirSyncOverrides feature of a Microsoft Entra tenant](/azure/active-directory/hybrid/how-to-bypassdirsyncoverrides).
548
549
549
550
-**UserPrincipalName changes don't update in Microsoft Entra ID**
550
551
551
-
If the UserPrincipalName attribute isn't updated in Microsoft Entra ID, while other attributes sync as expected, it's possible that a feature that's named [SynchronizeUpnForManagedUsers](/azure/active-directory/hybrid/how-to-connect-syncservice-features#synchronize-userprincipalname-updates) isn't enabled on the tenant.
552
-
553
-
Before this feature was added, any updates to the UPN that came from on-premises after the user was provisioned in Microsoft Entra ID and assigned a license were *silently* ignored. An admin would have to use the legacy MSOnline or AzureAD PowerShell to update the UPN directly in Microsoft Entra ID. After this feature is updated, any updates to UPN will flow to Microsoft Entra regardless of whether the user is licensed (managed).
552
+
If the UserPrincipalName attribute isn't updated in Microsoft Entra ID, while other attributes synchronize as expected, it’s possible that a feature called [SynchronizeUpnForManagedUsers](/azure/active-directory/hybrid/how-to-connect-syncservice-features#synchronize-userprincipalname-updates) isn't enabled on the tenant.
553
+
554
+
Before this feature is added, any updates to the UPN from on-premises are *silently* ignored after the user is provisioned in Microsoft Entra ID and assigned a license. An admin must use the legacy MSOnline or AzureAD PowerShell to update the UPN directly in Microsoft Entra ID. After this feature is added, any updates to UPN will flow to Microsoft Entra regardless of whether the user is licensed (managed).
554
555
555
-
> [!NOTE]
556
-
> After it's enabled, this feature can't be disabled.
556
+
> [!NOTE]
557
+
> After it's enabled, this feature can't be disabled.
557
558
558
559
**UserPrincipalName** updates will work if the user isn't licensed. However, without the [SynchronizeUpnForManagedUsers](/azure/active-directory/hybrid/how-to-connect-syncservice-features#synchronize-userprincipalname-updates) feature, UserPrincipalName changes after the user is provisioned and is assigned a licensed that will NOT be updated in Microsoft Entra ID. Notice that Microsoft doesn't disable this feature on behalf of customers.
0 commit comments