SourceAnchor User
Diese Seite befasst sich mit den Details bei der Verwendung und Bestimmung des Sourceanchor, auch als ImmutableID oder ms-DS-ConsitencyGUID bezeichnet.
Lesen Sie dazu vorab die Seite SourceAnchor. Für Gruppen und Kontakte gibt es eine eigene Seite auf SourceAnchor Gruppen
Ablauf: Benutzer neu anlegen
Diese Beschreibung gilt für ADSync aber
nicht für
AzureAD Cloud
Sync, dieser das Feld "ms-ds-consistencyGUID" nicht
zurückschreibt.
Siehe
https://learn.microsoft.com/en-us/azure/active-directory/cloud-sync/reference-cloud-sync-faq#does-cloud-sync-support-writeback-of-ms-ds-consistencyguid-for-any-object-
Am einfachsten können Sie die Logik verstehen, wenn wir den Ablauf von ADSync analysieren, der bei der Neuanlage eines Benutzers erfolgt:
Schritt | Beschreibung | Details |
---|---|---|
1 |
Lokales AD-Objekte wird angelegtDas Feld "ms-DS-ConsitencyGuid" ist leer, da die lokalen Tools ja nichts davon wissen. |
Hier ein Auszug per LDIFDE. Das Feld "ms-DS-ConsistencyGuid" ist nicht gefüllt dn: CN=ADUser8,OU=Firma,DC=carius,DC=de changetype: add objectClass: top objectClass: person objectClass: organizationalPerson objectClass: user cn: ADUser8 givenName: ADUser8 distinguishedName: CN=ADUser8,OU=Firma,DC=carius,DC=de instanceType: 4 whenCreated: 20210203221754.0Z whenChanged: 20210203221754.0Z displayName: ADUser8 uSNCreated: 1767140 uSNChanged: 1767145 name: ADUser8 objectGUID:: kZj7niGua0Gz92mIDCl+Tw== userAccountControl: 512 badPwdCount: 0 codePage: 0 countryCode: 0 badPasswordTime: 0 lastLogoff: 0 lastLogon: 0 pwdLastSet: 132568642745385468 primaryGroupID: 513 objectSid:: AQUAAAAAAAUVAAAAwM8SUMELJU0m/cWzfAQAAA== accountExpires: 9223372036854775807 logonCount: 0 sAMAccountName: ADUser8 sAMAccountType: 805306368 userPrincipalName: ADUser8@carius.de objectCategory: CN=Person,CN=Schema,CN=Configuration,DC=carius,DC=de dSCorePropagationData: 16010101000000.0Z |
2 |
ADSync "Delta Import"Das Objekt landet über den "Delta Import" der lokalen Domäne im Connectorspace. Da sich im AzureAD nichts geändert hat, liefert der Import aus der Cloud keine Änderungen. Im Metaverse ist noch nichts von dem neuen Objekt zu sehen. |
![]() ![]() |
3 |
ADSync "Delta Sync"Der zweite Schritt ist der "DeltaSync" der lokalen Domäne um das Objekt ins Metaverse zu übertragen. |
![]() |
Info |
Durch den DeltaSync landet der Benutzer im Metaverse aber auch schon im Connectorspace zur Cloud und beide Objekte haben den SourceAnchor. Sie sehen schon hier, dass der Wert der ObjectGUID entspricht. |
![]() ![]() |
Info |
Die Syntaxregel ist hier nicht voll lesbar und auch sonst schwer zu lesen. Wenn das Feld ms-DS-ConsistencyGuid gefüllt ist, wird dieses Feld genutzt. Ansonsten wird die immer vorhandene ObjectGUID herangezogen. Dies gilt für Benutzer |
![]() |
Info |
Im Connectorspace zum Active Directory sind die Änderung natürlich noch nicht angekommen. |
Der erste Sync hat erst die Daten aus dem Connector Space des AD ins Metaverse übertragen und dabei wurde erst der SourceAnchor angelegt. |
4 |
ADSync ExportDer Export überträgt die Änderungen aus dem jeweiligen Connectorspace in das Zielsystem. Der Export in Richtung lokalem Active Diretory hat noch nichts zu schreiben |
![]() ![]() |
Info |
PauseDer ADSync Prozess synchronisiert in der Regel alle 30 Minuten. Das Provisioning ist aber noch nicht abgeschlossen |
PS C:\> Get-ADSyncScheduler AllowedSyncCycleInterval : 00:30:00 CurrentlyEffectiveSyncCycleInterval : 00:30:00 CustomizedSyncCycleInterval : NextSyncCyclePolicyType : Delta NextSyncCycleStartTimeInUTC : 03.02.2021 22:46:48 PurgeRunHistoryInterval : 7.00:00:00 SyncCycleEnabled : False MaintenanceEnabled : True StagingModeEnabled : False SchedulerSuspended : False SyncCycleInProgress : False |
5 |
Delta ImportBeim nächsten Import kommt nun aus dem AzureAD ein Update. Auf dem lokalen AD gibt es keine Änderungen |
![]() ![]() |
6 |
Delta SyncDie Änderungen aus dem Connector Space landen nun im Metaverse und im CS zum Active Directory. Hier sehen wir auch, dass der SourceAnchor aus dem AzureAD zurückgelesen und Richtung Active Directory repliziert wird, obwohl das Feld schon bei der ersten Synchronisation aus dem AD zur Cloud im Metaverse gefüllt wurde. Der DeltaSync zu Azure hat keine Änderungen zu übertragen |
![]() ![]() |
7 |
Export zum ADHier wird nun, wie erwartet, das Feld ms-DS-ConsistencyGuid aktualisiert |
|
8 |
Export zum AzureADAber auch zum AzureAD gibt es noch ein Update. So richtig einordnen kann es aber nicht, warum hier ein Feld "On-PremisesUserPrincipalName" im Azure AD gelöscht wird, welches vorher noch nie erschienen ist. |
![]() ![]() |
Bleibt also festzuhalten:
- Bei neuen Objekten kommt die ObjectGUID als SourceAnchor zum Einsatz
- Bei bestehenden Objekten liest ADSync die ms-DS-ConsistencyGUID und ersatzweise die ObjectGUID.
- ADSync erstellt die BASE64-codierte ImmutableID
- ADSync schreibt die ImmutableID in der
Cloud
d.h. sie wird nicht von Azure erstellt oder bestimmt. - ADSync schreibt lokal das Feld "ms-DS-consistencyGUID
Bei der Umstellung wird das
Weitere Links
- SourceAnchor
- SourceAnchor Gruppen
- SourceAnchor und ADMT
- ADSync mit Devices
- ADSync - Objekte löschen und zurückholen
-
Q: Does cloud sync support writeback of ms-ds-consistencyGUID
for any object?
A: No, cloud sync does not support writeback of ms-ds-consistencyGUID for any object (including user objects).
https://learn.microsoft.com/en-us/azure/active-directory/cloud-sync/reference-cloud-sync-faq#does-cloud-sync-support-writeback-of-ms-ds-consistencyguid-for-any-object- -
Azure AD Connect: When you have an existing tenant
https://docs.microsoft.com/en-us/azure/active-directory/hybrid/how-to-connect-install-existing-tenant - [Powershell Script] Convert ImmutableID
https://blog.jumlin.com/2018/09/powershell-script-convert-immutableid/ - Batch convert immutableID into Hexadecimal for
ms-dS-ConsistencyGuid
https://www.reddit.com/r/PowerShell/comments/e6yg7h/batch_convert_immutableid_into_hexadecimal_for/ - KnowledgeBase: You receive “the mS-DS-ConsistencyGuid
attribute is already in use” when you change the source anchor
on a Staging Mode Azure AD Connect installation
https://dirteam.com/sander/2020/08/19/knowledgebase-you-receive-the-ms-ds-consistencyGuid-attribute-is-already-in-use-when-you-change-the-source-anchor-on-a-staging-mode-azure-ad-connect-installation/ -
Using ms-DS-ConsistencyGuid as sourceAnchor
https://docs.microsoft.com/en-us/azure/active-directory/hybrid/plan-connect-design-concepts#using-ms-ds-consistencyGuid-as-sourceanchor -
Explained: User Hard Matching and Soft Matching in Azure AD
Connect
https://dirteam.com/sander/2020/03/27/explained-user-hard-matching-and-soft-matching-in-azure-ad-connect/ -
Azure AD Connect: objectGUID vs. mS-DS-ConsistencyGuid,
Part 1: https://dirteam.com/sander/2017/07/12/azure-ad-connect-objectguid-vs-ms-ds-consistencyGuid-part-1/
Part 2: https://dirteam.com/sander/2017/08/24/azure-ad-connect-objectguid-vs-ms-ds-consistencyGuid-part-2/
Part 3: https://dirteam.com/sander/2017/08/31/azure-ad-connect-objectguid-vs-ms-ds-consistencyGuid-part-3/ -
Azure AD Connect v1.5.18.0 brings mS-DS-ConsistencyGuid as
source anchor for Groups
https://dirteam.com/sander/2020/04/03/azure-ad-connect-v1-5-18-0-brings-ms-ds-consistencyGuid-als-source-anchor-for-groups/ - Azure AD Connect - procedure to change source of anchor from
ObjectSID to Ms-DS-ConsistencyGuid
https://docs.microsoft.com/en-us/answers/questions/124627/azure-ad-connect-procedure-to-change-source-of-anc.html