ANAVEM
Languageen
Comment bloquer les correspondances souples et rigides dans Microsoft Entra ID pour une sécurité renforcée

Comment bloquer les correspondances souples et rigides dans Microsoft Entra ID pour une sécurité renforcée

Désactiver les capacités de correspondance souple et rigide dans Microsoft Entra ID à l'aide de PowerShell pour empêcher la prise de contrôle non autorisée d'objets cloud et renforcer la sécurité du locataire.

10 avril 2026 12 min
hardentra-id 7 étapes 12 min

Pourquoi devriez-vous bloquer le jumelage souple et rigide dans Microsoft Entra ID ?

Les fonctionnalités de jumelage souple et rigide de Microsoft Entra ID, bien qu'elles soient conçues pour simplifier la synchronisation des objets lors des migrations, créent des vulnérabilités de sécurité importantes qui peuvent être exploitées par des attaquants pour prendre le contrôle des identités cloud. Comprendre et configurer correctement ces fonctionnalités est crucial pour maintenir un environnement d'identité hybride sécurisé.

Quels sont les risques de sécurité du jumelage activé ?

Le jumelage souple lie automatiquement les objets sur site et cloud en fonction de userPrincipalName ou de l'adresse SMTP principale. Cette fonctionnalité apparemment pratique peut être exploitée lorsqu'un attaquant accède à votre Active Directory sur site et crée des objets avec des attributs correspondant à des utilisateurs cloud existants. Le jumelage rigide, qui utilise l'ImmutableID (source anchor), offre plus de précision mais peut toujours être manipulé si un attaquant compromet votre environnement sur site et peut contrôler les valeurs de source anchor.

Le scénario d'attaque est simple : un attaquant ayant accès à l'AD sur site crée un compte utilisateur avec un userPrincipalName ou un source anchor correspondant à un objet cloud existant, en particulier des comptes à privilèges élevés. Lors du prochain cycle de synchronisation d'Entra Connect, la logique de jumelage lie ces objets, donnant effectivement à l'attaquant le contrôle sur l'identité cloud et ses permissions associées.

Comment Microsoft recommande-t-il de sécuriser ces fonctionnalités ?

Les recommandations de sécurité actuelles de Microsoft préconisent fortement de désactiver par défaut le jumelage souple et rigide et de ne les activer que pendant des fenêtres de migration spécifiques lorsque cela est absolument nécessaire. Cette approche suit le principe du moindre privilège et réduit considérablement la surface d'attaque pour les tentatives de prise de contrôle d'identité. Les fonctionnalités de blocage doivent être considérées comme une étape fondamentale de renforcement de la sécurité pour toute organisation utilisant Entra Connect pour la synchronisation d'identité hybride.

Guide de mise en oeuvre

Procédure complète

01

Installer et se connecter au module Microsoft Entra PowerShell

Tout d'abord, installez le module PowerShell Microsoft.Entra, qui est l'approche recommandée par Microsoft pour gérer les fonctionnalités de synchronisation de répertoire. Ce module remplace le module MSOnline hérité.

Install-Module Microsoft.Entra -Repository PSGallery -Force -AllowClobber

Importez le module et connectez-vous à votre locataire Entra ID avec les autorisations requises :

Import-Module Microsoft.Entra
Connect-Entra -Scopes 'OnPremDirectorySynchronization.ReadWrite.All'

Lorsque vous y êtes invité, authentifiez-vous avec vos identifiants d'administrateur global ou d'administrateur de synchronisation de répertoire. La connexion établira une session avec votre locataire.

Astuce pro : Utilisez Get-EntraContext pour vérifier votre connexion et voir à quel locataire vous êtes connecté avant d'apporter des modifications.

Vérification : Exécutez Get-EntraContext pour confirmer que vous êtes connecté au bon locataire. Vous devriez voir votre ID de locataire et les détails d'authentification affichés.

02

Vérifier l'état actuel de correspondance souple et rigide

Avant de faire des modifications, examinez l'état actuel de vos fonctionnalités de synchronisation de répertoire. Cette vérification de base vous aide à comprendre ce qui est actuellement activé et fournit un point de référence.

Get-EntraDirSyncFeature

Cette commande affiche toutes les fonctionnalités de synchronisation de répertoire et leur statut actuel activé/désactivé. Recherchez spécifiquement ces deux fonctionnalités :

  • BlockSoftMatch - Contrôle la correspondance souple basée sur userPrincipalName ou l'adresse SMTP principale
  • BlockCloudObjectTakeoverThroughHardMatch - Contrôle la correspondance stricte via l'ancre source (ImmutableID)

La sortie affichera True si le blocage est activé (sécurisé) ou False si la correspondance est autorisée (risque potentiel de sécurité).

Avertissement : Si les deux fonctionnalités affichent False, votre locataire est vulnérable aux attaques de prise de contrôle d'objet. Procédez immédiatement aux étapes de blocage.

Vérification : La sortie de la commande doit afficher un tableau avec les noms des fonctionnalités et leur statut actuel. Documentez ces paramètres actuels avant de continuer.

03

Bloquer la correspondance souple pour prévenir les prises de contrôle basées sur UPN

La correspondance souple lie automatiquement les objets sur site et cloud en fonction de userPrincipalName ou de l'adresse SMTP principale. Bien que pratique pour les migrations, elle crée une vulnérabilité de sécurité significative où les attaquants peuvent potentiellement prendre le contrôle des objets cloud.

Obtenez votre ID de locataire et bloquez la correspondance souple :

$tenantID = (Get-EntraContext).TenantId
Set-EntraDirSyncFeature -Features 'BlockSoftMatch' -Enable $true -TenantId $tenantID -Force

Cette commande désactive immédiatement la correspondance souple sur l'ensemble de votre locataire. Le paramètre -Force contourne les invites de confirmation, ce qui le rend adapté aux scripts d'automatisation.

La correspondance souple fonctionne en comparant ces attributs entre les objets sur site et cloud :

  • userPrincipalName (attribut de correspondance principal)
  • Adresse SMTP principale à partir de proxyAddresses
  • Attribut Mail (si présent)

Lorsqu'elle est bloquée, Entra Connect établira uniquement des relations d'objets par correspondance stricte explicite ou lors de la synchronisation initiale.

Astuce pro : Si vous devez effectuer une migration ponctuelle, vous pouvez temporairement désactiver ce blocage, compléter votre migration, puis le réactiver immédiatement pour une sécurité continue.

Vérification : Exécutez à nouveau Get-EntraDirSyncFeature et confirmez que BlockSoftMatch affiche désormais True.

04

Bloquer le jumelage strict pour prévenir les prises de contrôle des ancres sources

Le jumelage strict utilise l'ImmutableID (ancre source) pour lier les objets. Bien que plus précis que le jumelage souple, il peut toujours être exploité si un attaquant accède à Active Directory sur site et peut manipuler les valeurs d'ancre source.

Bloquer la prise de contrôle d'objet cloud via le jumelage strict :

$tenantID = (Get-EntraContext).TenantId
Set-EntraDirSyncFeature -Features 'BlockCloudObjectTakeoverThroughHardMatch' -Enable $true -TenantId $tenantID -Force

Cette protection empêche les scénarios où :

  • Un attaquant compromet l'AD sur site
  • Il crée un nouvel utilisateur avec une ancre source correspondant à un objet cloud existant
  • Entra Connect lierait normalement ces objets, donnant à l'attaquant le contrôle sur l'identité cloud

Avec ce blocage activé, Entra Connect rejettera les tentatives de synchronisation qui entraîneraient une prise de contrôle non autorisée d'objet via la manipulation de l'ancre source.

La logique d'application vérifie les attributs de mappage sur site avant d'autoriser tout remappage de source d'autorité, bloquant efficacement les tentatives de remappage suspectes.

Avertissement : Ce paramètre peut affecter les scénarios de migration légitimes où vous devez lier des objets cloud existants à de nouveaux objets sur site. Planifiez vos migrations avec soin et désactivez temporairement ce blocage uniquement si nécessaire.

Vérification : Exécutez Get-EntraDirSyncFeature et confirmez que BlockCloudObjectTakeoverThroughHardMatch affiche True.

05

Vérifier la configuration de blocage et tester le comportement de synchronisation

Après avoir activé les deux fonctionnalités de blocage, effectuez une vérification complète pour vous assurer que votre configuration de sécurité est active et fonctionne correctement.

Vérifiez l'état final de toutes les fonctionnalités de synchronisation de répertoire :

Get-EntraDirSyncFeature | Where-Object {$_.FeatureName -like '*Block*'} | Format-Table FeatureName, Enabled -AutoSize

Cette vue filtrée montre uniquement les fonctionnalités liées au blocage pour une vérification facile. Les deux devraient afficher True dans la colonne Enabled.

Si vous avez Entra Connect en cours d'exécution, déclenchez une synchronisation manuelle pour tester le nouveau comportement :

# Exécutez ceci sur votre serveur Entra Connect
Start-ADSyncSyncCycle -PolicyType Delta

Surveillez les journaux de synchronisation pour tout changement de comportement. Avec le blocage activé, vous devriez voir :

  • Aucun appariement automatique souple des objets basé sur UPN ou email
  • Rejet des tentatives d'appariement strict qui entraîneraient une prise de contrôle d'objet
  • Messages d'erreur clairs si des tentatives d'appariement légitimes sont bloquées
Conseil de pro : Configurez des alertes de surveillance pour les erreurs de synchronisation Entra Connect. Avec le blocage activé, les tentatives de migration légitimes généreront des codes d'erreur spécifiques que vous pouvez utiliser pour identifier quand un déblocage temporaire pourrait être nécessaire.

Vérification : Vérifiez les rapports de synchronisation Entra Connect et assurez-vous qu'aucun lien d'objet inattendu ne se produit lors du prochain cycle de synchronisation.

06

Configurer le déblocage temporaire pour les migrations planifiées

Microsoft recommande de garder le blocage activé par défaut et de ne le désactiver que pendant des fenêtres de migration spécifiques. Voici comment gérer en toute sécurité le déblocage temporaire pour des besoins commerciaux légitimes.

Créez un script pour le déblocage temporaire pendant les migrations :

# Enregistrer l'état actuel du blocage
$currentSoftMatch = (Get-EntraDirSyncFeature | Where-Object {$_.FeatureName -eq 'BlockSoftMatch'}).Enabled
$currentHardMatch = (Get-EntraDirSyncFeature | Where-Object {$_.FeatureName -eq 'BlockCloudObjectTakeoverThroughHardMatch'}).Enabled

Write-Host "Current BlockSoftMatch: $currentSoftMatch"
Write-Host "Current BlockCloudObjectTakeoverThroughHardMatch: $currentHardMatch"

# Désactiver temporairement pour la migration (à utiliser avec une extrême prudence)
$tenantID = (Get-EntraContext).TenantId
Set-EntraDirSyncFeature -Features 'BlockSoftMatch' -Enable $false -TenantId $tenantID -Force
Set-EntraDirSyncFeature -Features 'BlockCloudObjectTakeoverThroughHardMatch' -Enable $false -TenantId $tenantID -Force

Write-Host "Blocage temporairement désactivé pour la migration. Réactivez immédiatement après la fin !"

Après avoir terminé vos tâches de migration, réactivez immédiatement le blocage :

# Réactiver le blocage après la migration
$tenantID = (Get-EntraContext).TenantId
Set-EntraDirSyncFeature -Features 'BlockSoftMatch' -Enable $true -TenantId $tenantID -Force
Set-EntraDirSyncFeature -Features 'BlockCloudObjectTakeoverThroughHardMatch' -Enable $true -TenantId $tenantID -Force

Write-Host "Blocage de sécurité réactivé avec succès."
Avertissement : Ne laissez jamais le blocage désactivé plus longtemps que nécessaire. Chaque minute de blocage désactivé augmente votre surface d'attaque. Envisagez de mettre en place une réactivation automatique après une fenêtre de temps spécifique.

Vérification : Exécutez toujours Get-EntraDirSyncFeature après la réactivation pour confirmer que les deux fonctionnalités de blocage sont à nouveau actives.

07

Mettre en œuvre la surveillance et la vérification de la conformité

Établissez une surveillance continue pour garantir que votre configuration de blocage reste sécurisée et conforme aux recommandations de sécurité de Microsoft.

Créez un script de surveillance pour vérifier régulièrement l'état du blocage :

# Script de surveillance pour l'état du blocage
function Test-EntraMatchingBlocks {
    try {
        Connect-Entra -Scopes 'OnPremDirectorySynchronization.ReadWrite.All' -ErrorAction Stop
        
        $features = Get-EntraDirSyncFeature
        $softMatchBlocked = ($features | Where-Object {$_.FeatureName -eq 'BlockSoftMatch'}).Enabled
        $hardMatchBlocked = ($features | Where-Object {$_.FeatureName -eq 'BlockCloudObjectTakeoverThroughHardMatch'}).Enabled
        
        $result = @{
            'SoftMatchBlocked' = $softMatchBlocked
            'HardMatchBlocked' = $hardMatchBlocked
            'ComplianceStatus' = ($softMatchBlocked -and $hardMatchBlocked)
            'CheckDate' = Get-Date
        }
        
        if ($result.ComplianceStatus) {
            Write-Host "✓ CONFORME : Les correspondances souples et dures sont bloquées" -ForegroundColor Green
        } else {
            Write-Host "✗ NON CONFORME : Les blocs de correspondance ne sont pas correctement configurés" -ForegroundColor Red
        }
        
        return $result
    }
    catch {
        Write-Error "Échec de la vérification de l'état du blocage : $($_.Exception.Message)"
    }
}

# Exécuter la vérification de conformité
Test-EntraMatchingBlocks

Pour les environnements d'entreprise, envisagez d'intégrer cette vérification dans votre cadre de conformité de sécurité. Le cadre de test de sécurité Maester inclut le test MT.1073 spécifiquement pour vérifier le blocage des correspondances souples et dures.

Configurez des alertes automatisées pour la dérive de configuration :

# Exemple : Planifiez cela comme une tâche quotidienne
$complianceCheck = Test-EntraMatchingBlocks
if (-not $complianceCheck.ComplianceStatus) {
    # Envoyer une alerte à l'équipe de sécurité
    Send-MailMessage -To "security@company.com" -Subject "Entra ID Matching Blocks Non-Compliant" -Body "Les blocs de correspondance souple/dure ne sont pas correctement configurés. Attention immédiate requise."
}
Astuce pro : Intégrez cette surveillance dans votre système de gestion des informations et des événements de sécurité (SIEM) existant pour la corréler avec d'autres événements de sécurité et maintenir une posture de sécurité globale.

Vérification : Exécutez le script de surveillance et confirmez qu'il identifie correctement l'état actuel du blocage. Testez le mécanisme d'alerte pour vous assurer que les notifications fonctionnent correctement.

Questions Fréquentes

Que se passe-t-il si je bloque la correspondance souple et dure pendant une migration active ?+
Le blocage de ces fonctionnalités pendant une migration active empêchera le lien automatique des objets et peut entraîner des erreurs de synchronisation. Microsoft recommande de terminer d'abord les migrations, puis d'activer les blocages. Si vous devez migrer avec les blocages activés, vous devrez configurer manuellement les relations d'objets en utilisant PowerShell et l'attribut ImmutableID avant la synchronisation.
Puis-je bloquer sélectivement la correspondance pour des utilisateurs ou des groupes spécifiques au lieu de l'ensemble du locataire ?+
Non, les fonctionnalités BlockSoftMatch et BlockCloudObjectTakeoverThroughHardMatch sont des paramètres à l'échelle du locataire qui ne peuvent pas être appliqués sélectivement. Elles affectent toutes les opérations de synchronisation sur l'ensemble de votre locataire Entra ID. Pour un contrôle granulaire, vous devez gérer manuellement les relations d'objets via des scripts PowerShell et une gestion minutieuse de l'ImmutableID.
Comment savoir si un attaquant a déjà exploité le soft ou le hard matching dans mon environnement ?+
Examinez vos journaux de synchronisation Entra Connect pour des événements de liaison d'objets inattendus, en particulier pour les comptes privilégiés. Vérifiez les objets récemment synchronisés qui ne faisaient pas partie des migrations prévues. Utilisez la commande Get-EntraDirSyncFeature pour voir quand le blocage a été modifié pour la dernière fois, et auditez votre AD sur site pour des comptes d'utilisateurs suspects avec des UPN ou des attributs correspondant à des objets cloud.
Le blocage des correspondances souples et rigides affectera-t-il les objets synchronisés existants ?+
Non, bloquer ces fonctionnalités empêche uniquement le nouveau lien automatique d'objets lors des futurs cycles de synchronisation. Les objets synchronisés existants qui étaient précédemment liés par correspondance souple ou rigide continueront de fonctionner normalement. Les blocages s'appliquent uniquement aux nouvelles tentatives de synchronisation qui créeraient des relations d'objets.
Quelle est la différence entre l'utilisation du module Microsoft.Entra et l'ancien module MSOnline pour le blocage ?+
Le module Microsoft.Entra est l'approche recommandée actuelle de Microsoft, offrant une meilleure sécurité, une authentification moderne et un support continu. Le module MSOnline hérité fonctionne toujours mais est obsolète et peut ne pas recevoir de mises à jour de sécurité. Le module Microsoft.Entra utilise des portées d'autorisation plus granulaires et offre une meilleure intégration avec les environnements PowerShell modernes et les cadres d'automatisation.

Discussion

Partagez vos réflexions et analyses

Connectez-vous pour participer