Après un déplacement d’utilisateurs vers une nouvelle OU on‑prem, leurs comptes « disparaissent » côté cloud ? Ce guide explique la cause la plus probable, le correctif exact (assistant Entra Connect + cycle « Initial »), et propose un mode opératoire pour répliquer le périmètre d’OU vers un serveur de staging, puis une check‑list de diagnostic.
Nouvelle OU ⇒ les comptes disparaissent d’Azure/Microsoft Entra
Vue d’ensemble de la question
Vous avez déplacé des comptes d’une OU A (déjà synchronisée) vers une nouvelle OU B. Peu après, les comptes sont supprimés dans Microsoft Entra ID/Microsoft 365. En remettant les objets dans l’OU A, ils « réapparaissent » dans le cloud.
Réponse & solution
Cause. La nouvelle OU B n’est pas incluse dans le périmètre de synchronisation (OU filtering). Quand un objet quitte le périmètre, Microsoft Entra Connect (ex‑Azure AD Connect) exporte une suppression douce (soft delete) vers le cloud : l’utilisateur passe en « Supprimé », mais reste restaurable pendant la période de rétention.
Correctif.
- Sur le serveur de synchronisation, rouvrez Microsoft Entra Connect → Configure → Customize synchronization options → page Domain and OU filtering → cochez la nouvelle OU → Next puis Configure.
- Déclenchez ensuite un cycle complet pour appliquer le nouveau filtrage et réingérer les objets :
Import-Module ADSync Start-ADSyncSyncCycle -PolicyType Initial
Le cycle Initial relit l’annuaire on‑prem (import), calcule les synchronisations et exporte vers le cloud. Il est plus complet qu’un cycle Delta.
À connaître
- Une suppression côté Entra ID est restaurable pendant 30 jours (corbeille). Si l’objet ré‑entre dans le périmètre (ex. retour dans une OU synchronisée), Entra Connect le restaure lors de l’export suivant.
- Renommer une OU modifie son DistinguishedName : elle sort du périmètre si vous ne la re‑sélectionnez pas dans l’assistant Domain and OU filtering.
- En cas de volumes importants de suppressions attendues, surveillez la protection Prevent accidental deletes (seuil par défaut 500). N’augmentez le seuil ou ne désactivez cette protection qu’en comprenant l’impact et en encadrant la fenêtre de changement.
Important : ce guide concerne Microsoft Entra Connect (ex‑Azure AD Connect). Si vous utilisez Cloud Sync (agent léger), la gestion du périmètre et la remédiation diffèrent ; adaptez les étapes à votre technologie.
Pourquoi les comptes « disparaissent » ? (sous le capot)
Le filtrage d’OU fait partie des scopes du connecteur AD. Lorsqu’un objet sort du scope, le moteur de synchronisation publie une opération delete
vers Entra ID. C’est une suppression « logique » : l’objet passe dans l’état Supprimé, l’historique d’ancrage (sourceAnchor/ImmutableId via mS-DS-ConsistencyGuid
recommandé) reste connu, ce qui permet une ré‑association automatique si l’objet redevient in‑scope à temps.
Procédure pas à pas (sécurisée)
- Planifiez un créneau hors pics d’usage.
- Ouvrez l’assistant Entra Connect → Customize synchronization options.
- À l’étape Domain and OU filtering, sélectionnez précisément les OU nécessaires (idéalement, cochez au niveau le plus bas utile plutôt qu’un domaine entier).
- Validez jusqu’au bout (Next → Configure) pour que la configuration soit appliquée au moteur.
- Lancez un cycle Initial (voir commande plus haut).
- Contrôlez dans Synchronization Service Manager (miisclient) :
- Operations : import/sync/export sans erreurs bloquantes.
- Connectors → AD Connector → Search Connector Space : vos objets remontent bien.
- Metaverse Search : l’objet existe et un export vers Entra ID est planifié.
Signaux utiles (lecture rapide)
Symptôme | Ce que vous voyez | Interprétation | Action rapide |
---|---|---|---|
Objets disparaissent après un move | Utilisateurs dans « Supprimés » côté Entra ID | OU hors périmètre | Inclure l’OU et lancer Initial |
Export stoppé | État stopped-deletion-threshold-exceeded | Protection Prevent accidental deletes active | Valider le périmètre puis ajuster le seuil si nécessaire |
« Sync ok », mais aucun changement | Journal vert, aucun export réalisé | Staging mode activé | Désactiver le staging pour exporter |
Répliquer la liste des OU de PROD vers un serveur staging (PowerShell / automatisation)
Vue d’ensemble de la question
Peut‑on mettre à jour le périmètre Domain/OU d’un serveur staging à partir de la configuration de PROD ? Oui : utilisez l’export/import de configuration fourni par l’assistant.
Méthode supportée : Export/Import de configuration
- Exporter depuis PROD : dans Entra Connect → View or Export Current Configuration. L’outil génère un fichier JSON horodaté (par défaut sous
%ProgramData%\AADConnect
). - Transférer le JSON vers le serveur staging (partage sécurisé, coffre de fichiers, etc.).
- Importer sur le staging : relancez l’assistant → Customize → Import synchronization settings → pointez sur le JSON → suivez l’assistant.
- L’import active le mode Staging par défaut : parfait pour valider sans exporter.
- Vous devrez saisir à nouveau les identifiants des connecteurs (AD/Entra).
Script d’aide : récupérer rapidement le dernier export
Sur PROD, vous pouvez automatiser la collecte du dernier JSON :
$root = Join-Path $env:ProgramData 'AADConnect'
$last = Get-ChildItem -Path $root -Filter '*.json' -File -Recurse |
Sort-Object LastWriteTime -Descending | Select-Object -First 1
Copy-Item $last.FullName '\\ServeurStaging\Share\Config\'
Sur staging, l’import se fait via l’assistant (interface graphique). Le but du script est de fiabiliser la source de vérité (le bon JSON horodaté).
Points d’attention à l’import
- Périmètre Domain/OU : il est inclus dans le JSON, mais vérifiez toujours la page Domain and OU filtering après import.
- Comptes de service et autorisations : non stockés en clair ; ils doivent être ressaisis.
- Réglages avancés : certains ajustements (profils d’exécution, attributs additionnels, règles personnalisées) peuvent nécessiter une revue manuelle.
Vérifier et tester en staging
- Confirmez que le même périmètre d’OU est sélectionné.
- Exécutez une synchronisation (Initial ou Delta). En staging, aucun export n’est envoyé au cloud, ce qui permet de valider l’ingestion et la projection sans impact.
- Contrôlez l’état de staging :
Import-Module ADSync Get-ADSyncScheduler | Format-List StagingModeEnabled
Élément | Transféré par l’export | À valider manuellement | Où vérifier |
---|---|---|---|
Domain/OU filtering | Oui | Oui (coches/chemins d’OU) | Assistant → Domain and OU filtering |
Comptes/connecteurs | Partiel (métadonnées) | Oui (re‑saisie des identifiants) | Étapes Connectors de l’assistant |
Règles personnalisées | Oui en général | Revue recommandée | Synchronization Rules Editor |
Seuil « Prevent accidental deletes » | Oui | Confirmer qu’il convient au périmètre | Paramètres serveur/Export |
« Synchronisation réussie » mais utilisateurs invisibles dans Microsoft 365 : check‑list rapide
- Le serveur est‑il en Staging mode ? En staging, aucun export n’est tenté, même si les cycles se déroulent « avec succès ». Comment vérifier :
Import-Module ADSync Get-ADSyncScheduler | Format-List StagingModeEnabled
Correctif : désactivez le Staging mode dans l’assistant si le serveur doit exporter. - Périmètre : confirmez que le domaine et l’OU des utilisateurs sont bien sélectionnés (Domain and OU filtering). Après toute modification, exécutez un cycle
Initial
. - Erreurs de synchronisation / doublons : inspectez les collisions d’attributs (
UserPrincipalName
,proxyAddresses
,mail
…), les objets filtrés par règles, et les erreurs de projection. Où regarder : Synchronization Service Manager (Operations, Errors), l’assistant (Troubleshoot Object Synchronization), et la recherche d’objets dans le Connector Space. - Validation dans le moteur : faites une Metaverse Search sur l’objet : s’il est dans la Metaverse et qu’une projection/export est prévu, vous verrez la ligne d’export planifiée.
Tableau de triage express
Question | Oui | Non |
---|---|---|
StagingModeEnabled = True ? | Désactiver le staging pour exporter | Passer à l’étape périmètre |
OU/Domaine de l’utilisateur inclus ? | Vérifier conflits d’attributs | Inclure l’OU, lancer Initial |
Erreurs d’export/doublon ? | Résoudre puis relancer Delta | Contrôler Metaverse/Connector Space |
Scénarios fréquents & pièges à éviter
OU de quarantaine ou de « pré‑provisionnement » non incluse
Des équipes déplacent temporairement les nouveaux comptes vers une OU « Quarantine » non cochée. Résultat : Entra Connect détecte la sortie du périmètre et exporte des suppressions douces. Solution : inclure l’OU et cadrer le processus de move pour éviter les aller‑retour inutiles.
Renommage d’OU après réorganisation
Le renommage change le DN ; les sélections d’OU basées sur l’arborescence ne suivent pas automatiquement. Après une refonte, passez systématiquement dans la page Domain and OU filtering pour re‑valider les chemins.
Ajout d’un nouveau domaine AD
Vous joignez un domaine enfant au même forêt. Tant que le domaine n’est pas coché et qu’un connecteur adéquat n’est pas configuré, les objets restent hors périmètre. Vérifiez les deux niveaux : Domain filtering puis OU filtering.
Conflits d’attributs au retour dans le périmètre
Si, pendant l’absence de l’objet, un compte cloud‑seulement a été créé avec le même UPN, la restauration peut échouer (doublon). Résolvez d’abord le conflit (renommer l’UPN en doublon, ou fusionner via l’attribut d’ancrage approprié), puis relancez la synchronisation.
Commandes PowerShell utiles (mémo)
# Déclencher une synchro delta (rapide)
Import-Module ADSync
Start-ADSyncSyncCycle -PolicyType Delta
# Déclencher une synchro complète (lecture/évaluation/export complets)
Start-ADSyncSyncCycle -PolicyType Initial
# Vérifier l'état du planificateur
Get-ADSyncScheduler | Format-List \*
# Mettre en pause/reprendre le planificateur (ex. fenêtre de maintenance)
Set-ADSyncScheduler -SyncCycleEnabled \$false
Set-ADSyncScheduler -SyncCycleEnabled \$true </code></pre>
<p><em>Conseil :</em> utilisez <code>Initial</code> après un changement de périmètre (domaine/OU) ou des règles ; <code>Delta</code> suffit pour les opérations courantes (modifications d’utilisateurs, groupes, etc.).</p>
<hr>
<h2>Bonnes pratiques pour éviter les suppressions surprises</h2>
<ul>
<li><strong>Change Management</strong> : formalisez un processus de move/rename d’OU incluant la mise à jour du périmètre dans Entra Connect <em>avant</em> le basculement.</li>
<li><strong>Staging d’abord</strong> : validez chaque changement majeur (ajout d’OU, nouvelles règles) sur un serveur en <em>staging</em>, avec <em>Metaverse Search</em> et revues d’erreurs.</li>
<li><strong>Pilote</strong> : commencez par une OU pilote avec peu d’objets pour tester les projections, puis élargissez.</li>
<li><strong>Prévention des suppressions accidentelles</strong> : gardez la protection activée. Si vous devez l’ajuster (grosse réorganisation), procédez par tranches et sous changement approuvé.</li>
<li><strong>Santé AD</strong> : assurez‑vous que la réplication AD DS est saine (pas de latences anormales), sinon le moteur peut voir des « trous » temporels.</li>
<li><strong>Ancrage stable</strong> : utilisez <code>mS-DS-ConsistencyGuid</code> comme source d’ancrage (recommandation actuelle) et ne le modifiez pas à la légère.</li>
<li><strong>Noms d’utilisateur cohérents</strong> : alignez UPN et SMTP principal pour réduire les conflits de <code>proxyAddresses</code>.</li>
</ul>
<hr>
<h2>FAQ</h2>
<h3>Combien de temps ai‑je pour récupérer un utilisateur supprimé ?</h3>
<p>Par défaut, <strong>30 jours</strong>. Pendant cette fenêtre, le retour de l’objet dans le périmètre permet une restauration automatique lors de l’export.</p>
<h3>Dois‑je toujours lancer un cycle <em>Initial</em> après avoir coché une nouvelle OU ?</h3>
<p>Oui. Le cycle <em>Initial</em> garantit la lecture complète et la projection correcte de tous les objets nouvellement in‑scope.</p>
<h3>Puis‑je cocher tout un domaine plutôt que des OU précises ?</h3>
<p>Oui, mais évitez de sur‑inclure. Un périmètre trop large augmente le risque de dépassement du seuil de suppressions et de synchroniser des objets non désirés.</p>
<h3>Qu’arrive‑t‑il si le seuil « Prevent accidental deletes » est dépassé ?</h3>
<p>L’export est <strong>arrêté</strong> pour prévenir une catastrophe. Corrigez le périmètre et/ou ajustez temporairement le seuil sous contrôle, puis relancez les exports.</p>
<h3>Le mode <em>Staging</em> réplique‑t‑il toutes les étapes ?</h3>
<p>Oui, sauf l’export. Il permet de valider import & synchronisation, la Metaverse et les règles, sans toucher au tenant.</p>
<h3>Un renommage d’OU est‑il détecté automatiquement ?</h3>
<p>Non. Re‑validez la sélection d’OU après tout renommage, car le DN a changé.</p>
<h3>Que faire en cas de doublon <code>proxyAddresses</code> ?</h3>
<p>Identifiez quel objet détient déjà l’adresse (souvent des boîtes partagées, contacts, groupes). Supprimez/renommez l’adresse conflictuelle, puis relancez un cycle <em>Delta</em>.</p>
<h3>Comment confirmer qu’un objet sera exporté ?</h3>
<p>Dans <em>Metaverse Search</em>, ouvrez l’objet et vérifiez la <em>Pending Export</em> du connecteur Entra ID. L’absence d’export indique souvent une règle de filtrage ou un conflit.</p>
<hr>
<h2>Résumé opérationnel</h2>
<ul>
<li><strong>Incluez la nouvelle OU</strong> via l’assistant <em>Domain and OU filtering</em>, puis exécutez un <strong>cycle Initial</strong>.</li>
<li><strong>Dupliquez le périmètre</strong> vers un serveur <em>staging</em> à l’aide de l’<strong>export/import de configuration</strong>. Vérifiez et testez sans exporter.</li>
<li>Si « tout est vert » mais rien n’apparaît, revoyez <strong>le mode staging</strong>, <strong>le périmètre</strong> et <strong>les erreurs/doublons</strong> dans le moteur.</li>
</ul>
<hr>
<h2>Annexe : procédures détaillées</h2>
<h3>Inclure une OU et relancer une synchronisation complète</h3>
<ol>
<li>Assistant Entra Connect → <em>Customize synchronization options</em>.</li>
<li><em>Connect to Azure AD</em> si demandé (compte global admin ou rôle adéquat).</li>
<li><em>Domain and OU filtering</em> → cochez la/les OU → <em>Next</em> → <em>Configure</em>.</li>
<li>PowerShell (élevé) :
<pre><code>Import-Module ADSync
Start-ADSyncSyncCycle -PolicyType Initial
Surveillez Synchronization Service Manager jusqu’à l’export.
Exporter/Importer la configuration
- Sur PROD : View or Export Current Configuration → conservez le JSON.
- Copiez le fichier vers le staging via un canal sécurisé.
- Sur staging : Customize → Import synchronization settings → sélectionnez le JSON → laissez Staging mode activé.
- Vérifiez Domain and OU filtering, lancez un Initial et inspectez la Metaverse.
Diagnostiquer avec le Troubleshoot Object Synchronization
- Assistant Entra Connect → Troubleshoot.
- Entrez l’UPN/Guid/DistinguishedName de l’objet.
- L’assistant indique l’étape bloquante : filtre, règle, collision, projection.
- Corrigez la cause, relancez un Delta.
Bonnes pratiques de fenêtre de changement
- Évaluer le nombre d’objets affectés avant de valider.
- Éviter les renommages/moves massifs sans préparation du périmètre.
- Communiquer avec les équipes messagerie et identité (risques de
proxyAddresses
et UPN).
Avec ces étapes, vous éliminez 90 % des causes de « disparition » d’utilisateurs après un changement d’OU : périmètre d’OU correctement défini, cycle Initial exécuté, et validations en staging avant la production.