Synchroniser des utilisateurs avec Entra ID : Soft Match et Hard Match
Synchroniser des utilisateurs avec Entra ID : Soft Match et Hard Match
Lors de la mise en place d’une configuration Exchange Hybride, notamment dans le cadre d’une migration d’Exchange vers Microsoft 365, il est essentiel de garantir la cohérence des objets Active Directory (AD) et de leurs attributs entre l’environnement local et Azure AD (Entra ID).
Pour assurer cette correspondance, Microsoft utilise Azure AD Connect, qui synchronise les objets utilisateurs d’Active Directory vers Azure AD. Toutefois, des conflits peuvent survenir si un utilisateur existe déjà dans les deux environnements, ce qui peut empêcher une synchronisation correcte.
Lorsqu’il s’agit bien du même utilisateur (et non d’un homonyme), il est indispensable d’établir un matching entre les deux comptes afin qu’Azure AD Connect les considère comme un seul et unique objet.
Pour cela, deux méthodes sont possibles :
✔️ Le Soft Match, aussi appelé SMTP Matching, basé sur l’adresse email principale.
✔️ Le Hard Match, qui repose sur l’attribut ImmutableID pour une correspondance plus stricte.
Dans cet article, nous allons voir en détail comment ces méthodes fonctionnent et comment les mettre en œuvre pour garantir une synchronisation fluide entre Active Directory et Azure AD.
1. Prérequis
Avant de commencer, il est nécessaire que vous ayez mis en place une synchronisation Entra ID en utilisant Azure AD Connect. Le processus de synchronisation (ou de correspondance) des objets se fait par le biais de cette application.
Afin de voir comment réaliser le matching, vous devrez disposer de :
- Le module PowerShell Active Directory Module installé sur votre poste d’administration
- Le module PowerShell Azure AD Module installé sur votre poste d’administration
- Un compte disposant des accès Global Administrator sur votre tenant et surtout Entra ID
2. Principe de fonctionnement
Lors de la synchronisation entre Active Directory (AD) et Azure Active Directory (Azure AD), il est essentiel d’associer correctement les comptes utilisateurs pour éviter les doublons. Deux méthodes de correspondance existent : le Soft Match et le Hard Match.
Le Soft Match (ou SMTP Matching)
Le Soft Match repose sur l’adresse SMTP principale de l’utilisateur pour faire correspondre les comptes entre AD et Azure AD. Cette méthode fonctionne dans la plupart des cas, à condition de respecter certaines règles :
- L’utilisateur doit posséder une adresse email dans Microsoft Exchange Online.
- Pour un contact ou un groupe à extension de messagerie, la correspondance se base sur l’attribut proxyAddresses.
- L’adresse SMTP principale ne doit pas être modifiée pendant l’opération.
- Les adresses SMTP étant uniques, il faut s’assurer qu’aucun autre utilisateur ne possède la même adresse.
Le Hard Match (basé sur l’ImmutableID)
Si le Soft Match échoue, le Hard Match prend alors le relais. Cette méthode consiste à :
- Récupérer le GUID du compte Active Directory.
- Le convertir en ImmutableID.
- Appliquer cet ImmutableID au compte Azure AD correspondant.
Cela permet d’établir un lien direct et permanent entre les deux comptes, les fusionnant en un seul compte synchronisé.
Gestion des conflits
Lors de la synchronisation entre AD et Azure AD, des conflits peuvent survenir si un utilisateur existe déjà dans les deux environnements. S’il s’agit bien de la même personne (et non d’un homonyme), il est crucial d’effectuer un matching entre les comptes. Azure AD Connect pourra ainsi les traiter comme un seul et même compte.
En appliquant ces méthodes, la synchronisation entre Active Directory et Azure Active Directory sera plus fluide et sans doublons.
3. Comment faire un Soft Match ?
Avant de procéder, il est important de vous assurer que les paramètres suivants sont respectés sur le compte utilisateur :
- L’utilisateur possède une boîte aux lettres Exchange Online.
- Son adresse SMTP principale (Primary SMTP Address) est correctement définie dans AD.
- Aucune autre boîte aux lettres ne possède la même adresse SMTP dans Azure AD (l’unicité des adresses doit être respectée).
- Le compte utilisateur n’a pas encore d’ImmutableID défini dans Azure AD (sinon, il faudra envisager un Hard Match).
Dans l’Active Directory local, l’adresse SMTP principale doit être renseignée dans l’attribut mail et répertoriée dans proxyAddresses sous le format suivant :
- mail =
utilisateur@domaine.com
- proxyAddresses =
SMTP:utilisateur@domaine.com
(adresse principale en majuscules, les autres ou alias en minuscules)
Vous n’avez plus qu’a forcer une synchronisation Azure AD Connect avec la commande
Si cela ne suffit pas à faire correspondre votre compte Active Directory local et le compte Microsoft 365 existant, passez au Hard Match.
4. Comment faire un hard Match ?
Récupérer le GUID du compte utilisateur dans Active Directory
Pour lier un compte AD avec un compte Azure AD, il faut d’abord récupérer le GUID de l’utilisateur dans l’AD local.
Comment par importer le module Active Directory dans votre session Powershell :
Import-module activedirectory
Exécutez la commande suivante :
$guid = (Get-ADUser -Identity « NomUtilisateur »).ObjectGUID
Note : Remplacez "NomUtilisateur"
par le sAMAccountName ou l’UPN de l’utilisateur.
Exécutez la commande suivante pour valider le résultat :
$guid
Le GUID s’affichera sous un format similaire à :550e8400-e29b-41d4-a716-446655440000
Convertir le GUID en ImmutableID
L’ImmutableID stocké dans Azure AD est une version encodée en Base64 du GUID AD. Pour le convertir, utilisez cette commande PowerShell :
$immutableID = [System.Convert]::ToBase64String($guid.ToByteArray())
Exécutez la commande suivante pour valider le résultat :
$immutableID
La sortie ressemblera à :BJ6oA+Jt1EpXRGZVVAQA==
(ImmutableID correspondant au GUID AD)
Associer l’ImmutableID au compte utilisateur dans Azure AD
Maintenant que vous avez l’ImmutableID, vous devez l’attribuer au compte Azure AD concerné.
Commencez par étabir une connexion à Azure AD via la commande suivante :
Connect-AzureAD
Puis exécutez les commandes suivantes pour récupérer et afficher l’ImmutableID :
Get-AzureADUser -ObjectId « user@example.com » | Select-Object
ImmutableId
Si l’ImmutableID affiché est vide ou incorrect, vous pouvez le modifier.
Appliquer l’ImmutableID correct dans Azure AD
Attention : Cette action lie définitivement le compte AD au compte Azure AD. Assurez vous d’avoir la bonne correspondance.
Utilisez la commande suivante pour définir l’ImmutableID sur le compte :
Set-AzureADUser -ObjectId « utilisateur@domaine.com » -ImmutableId « base64ImmutableID »
Note : Remplacez "utilisateur@domaine.com"
par l’UPN de l’utilisateur dans Azure AD et "base64ImmutableID"
par l’ImmutableID converti.
Forcer la synchronisation de l’Azure AD connect et vérifiez le résultat sur le portail d’administration O365.
Commentaires récents