Microsoft Entra Connect Sync : présentation de la configuration par défaut

Cet article présente les règles de configuration out-of-box. Il décrit les règles et l’impact que celles-ci ont sur la configuration. Il vous guide également tout au long de la configuration par défaut de Microsoft Entra Connect Sync. L’objectif est que le lecteur comprenne comment fonctionne le modèle de configuration, nommé provisionnement déclaratif, dans un exemple réel. Cet article part du principe que vous avez déjà installé et configuré Microsoft Entra Connect Sync à l’aide de l’Assistant Installation.

Pour comprendre les détails du modèle de configuration, lisez Comprendre l’approvisionnement déclaratif.

Règles prêtes à l’emploi du local vers Microsoft Entra ID

Les expressions suivantes se trouvent dans la configuration out-of-box.

Règles out-of-box d’utilisateur

Ces règles s’appliquent également au type d’objet iNetOrgPerson.

Un objet utilisateur doit remplir les conditions suivantes pour être synchronisé :

  • Il doit disposer d’un sourceAnchor.
  • Une fois que l’objet a été créé dans Microsoft Entra ID, le sourceAnchor ne peut pas être modifié. Si la valeur est modifiée en local, l’objet arrête la synchronisation jusqu’à ce que l’attribut sourceAnchor récupère sa valeur précédente.
  • L’attribut accountEnabled (userAccountControl) dont il dispose doit être renseigné. Avec un Active Directory local, cet attribut est toujours présent et renseigné.

Les objets utilisateur suivants ne sont pas synchronisés avec Microsoft Entra ID :

  • IsPresent([isCriticalSystemObject]). Vérifiez que la plupart des objets out-of-box dans Active Directory, tels que le compte administrateur intégré, ne sont pas synchronisés.
  • IsPresent([sAMAccountName]) = False. Assurez-vous que les objets utilisateur sans l'attribut sAMAccountName ne sont pas synchronisés. Ce cas se produit pratiquement uniquement dans un domaine mis à niveau à partir d’un système NT4.
  • Left([sAMAccountName], 4) = "AAD_", Left([sAMAccountName], 5) = "MSOL_". Ne synchronisez pas le compte de service utilisé par Microsoft Entra Connect Sync et ses versions précédentes.
  • Ne synchronisez pas les comptes Exchange qui pourraient ne pas fonctionner dans Exchange Online.
    • [sAMAccountName] = "SUPPORT_388945a0"
    • Left([mailNickname], 14) = "SystemMailbox{"
    • (Left([mailNickname], 4) = "CAS_" && (InStr([mailNickname], "}") > 0))
    • (Left([sAMAccountName], 4) = "CAS_" && (InStr([sAMAccountName], "}")> 0))
  • Ne synchronisez pas les objets qui pourraient ne pas fonctionner dans Exchange Online. CBool(IIF(IsPresent([msExchRecipientTypeDetails]),BitAnd([msExchRecipientTypeDetails],&H21C07000) > 0,NULL))
    Ce masque de bits (&H21C07000) pourrait exclure les objets suivants :
    • Dossier public à extension messagerie (en préversion à partir de la version 1.1.524.0)
    • Boîte aux lettres de surveillance du système
    • Boîte aux lettres de base de données de boîtes aux lettres (Boîte aux lettres système)
    • Groupe de sécurité universel (ne s'applique pas à un utilisateur, mais est présent pour des raisons d'héritage)
    • Groupe non universel (ne s'applique pas à un utilisateur, mais est présent pour des raisons d'héritage)
    • Plan de boîte aux lettres
    • Boîte aux lettres de découverte
  • CBool(InStr(DNComponent(CRef([dn]),1),"\\0ACNF:")>0). Ne synchronisez aucun objet victime de réplication.

Les règles d’attribut suivantes s’appliquent :

  • sourceAnchor <- IIF([msExchRecipientTypeDetails]=2,NULL,..). L’attribut sourceAnchor n’est pas partagé à partir d’une boîte aux lettres liée. On part du principe que si une boîte aux lettres liée a été trouvée, le compte actuel sera associé ultérieurement.
  • Les attributs liés à Exchange sont uniquement synchronisés si l'attribut mailNickName a une valeur.
  • Lorsqu’il existe plusieurs forêts, les attributs sont consommés dans l’ordre suivant :
    1. Les attributs liés à l’authentification (par exemple, userPrincipalName) sont obtenus à partir de la forêt avec un compte activé.
    2. Les attributs qui se trouvent dans la LAG (liste d’adresses globale) Exchange sont synchronisés à partir de la forêt avec la boîte aux lettres Exchange.
    3. Si aucune boîte aux lettres ne peut être trouvée, ces attributs peuvent provenir de n'importe quelle forêt.
    4. Les attributs liés à Exchange (attributs techniques non visibles dans la liste d’adresses globale) sont fournis à partir de la forêt où mailNickname ISNOTNULL.
    5. S’il existe plusieurs forêts qui répondent à une de ces règles, alors l’ordre de création (date/heure) des connecteurs (forêts) est utilisé pour déterminer quelle forêt fournit les attributs. La première forêt connectée sera la première forêt à être synchronisée.

Règles out-of-box de contact

Un objet contact doit remplir les conditions suivantes pour être synchronisé :

  • Doit avoir une valeur d’attribut de messagerie.
  • Le contact doit être à extension messagerie. Il est vérifié par les règles suivantes :
    • IsPresent([proxyAddresses]) = True). L'attribut proxyAddresses doit être renseigné.
    • L'attribut proxyAddresses ou l'attribut de messagerie peuvent comporter une adresse de messagerie principale. La présence d’un @ est utilisée pour vérifier que le contenu est une adresse de messagerie. L’une de ces deux règles doit prendre la valeur True.
      • (Contains([proxyAddresses], "SMTP:") > 0) && (InStr(Item([proxyAddresses], Contains([proxyAddresses], "SMTP:")), "@") > 0)). Existe-t-il une entrée avec « SMTP: », et si tel est le cas, est-il possible de trouver un @ dans la chaîne ?
      • (IsPresent([mail]) = True && (InStr([mail], "@") > 0). L’attribut de messagerie est-il renseigné, et si tel est le cas, est-il possible de trouver un @ dans la chaîne ?

Les objets de contact suivants ne sont pas synchronisés avec Microsoft Entra ID :

  • IsPresent([isCriticalSystemObject]). Vérifiez qu’aucun objet contact marqué comme critique n’est synchronisé. Cet objet ne devrait pas avoir de configuration par défaut.
  • ((InStr([displayName], "(MSOL)") > 0) && (CBool([msExchHideFromAddressLists]))).
  • (Left([mailNickname], 4) = "CAS_" && (InStr([mailNickname], "}") > 0)). Ces objets ne fonctionneraient pas avec Exchange Online.
  • CBool(InStr(DNComponent(CRef([dn]),1),"\\0ACNF:")>0). Ne synchronisez aucun objet victime de réplication.

Règles out-of-box de groupe

Un objet groupe doit remplir les conditions suivantes pour être synchronisé :

  • Il doit compter moins de 250 000 membres. Ce chiffre correspond au nombre de membres du groupe local.
    • S’il compte plus de membres avant sa toute première synchronisation, le groupe n’est pas synchronisé.
    • Si le nombre de membres augmente à partir du moment où il a été créé, alors sa synchronisation est interrompue lorsqu’il atteint 250 000 membres, jusqu’à ce que le nombre redevienne inférieur à 250 000 membres.
    • Remarque : La limite de 250 000 membres s’applique également avec Microsoft Entra ID. Vous ne pouvez pas synchroniser les groupes d’un nombre de membres supérieur même si vous modifiez ou supprimez cette règle.
  • Si le groupe est un groupe de distribution, il doit alors également être activé pour la messagerie. Consultez la page Règles out-of-box de contact pour l’application de cette règle.

Les objets de groupe suivants ne sont pas synchronisés avec Microsoft Entra ID :

  • IsPresent([isCriticalSystemObject]). Vérifiez que la plupart des objets out-of-box dans Active Directory, tels que le groupe administrateur intégré, ne sont pas synchronisés.
  • [sAMAccountName] = "MSOL_AD_Sync_RichCoexistence". Groupe hérité utilisé par DirSync.
  • BitAnd([msExchRecipientTypeDetails],&amp;H40000000). Groupe de rôles.
  • CBool(InStr(DNComponent(CRef([dn]),1),"\\0ACNF:")>0). Ne synchronisez aucun objet victime de réplication.

Règles out-of-box ForeignSecurityPrincipal

Les FSP sont joints à « tout » (*) objet dans le métaverse. En réalité, cela se produit uniquement pour les utilisateurs et les groupes de sécurité. Cette configuration garantit que les appartenances inter-forêts sont correctement résolues et représentées dans Microsoft Entra ID.

Règles out-of-box d’ordinateur

Un objet ordinateur doit remplir les conditions suivantes pour être synchronisé :

  • userCertificate ISNOTNULL. Seuls les objets ordinateur Windows 10 renseignent cet attribut. Tous les objets ordinateur avec une valeur de cet attribut sont synchronisés.

Présentation du scénario de règles out-of-box

Dans cet exemple, nous utilisons un déploiement comportant une forêt de comptes (A), une forêt de ressources (R) et un annuaire Microsoft Entra.

Picture with scenario description

Dans cette configuration, il est supposé exister un compte activé dans la forêt de comptes et un compte désactivé dans la forêt de ressources avec une boîte aux lettres liée.

Nos objectifs avec la configuration par défaut sont les suivants :

  • Les attributs liés à la connexion sont synchronisés à partir de la forêt avec le compte activé.
  • Les attributs qui se trouvent dans la LAG (liste d’adresses globale) sont synchronisés à partir de la forêt avec la boîte aux lettres. Si aucune boîte aux lettres n’est trouvée, toute autre forêt est utilisée.
  • Si une boîte aux lettres liée est trouvée, le compte activé lié doit être trouvé pour que l’objet soit exporté vers Microsoft Entra ID.

Éditeur de règles de synchronisation

La configuration peut être affichée et modifiée avec l’outil Éditeur de règles de synchronisation (SRE), dont le raccourci se trouve dans le menu Démarrer.

Synchronization Rules Editor icon

Le SRE est un outil du kit de ressources installé avec Microsoft Entra Connect Sync. Pour être en mesure de le démarrer, vous devez être membre du groupe ADSyncAdmins. Lorsqu’il démarre, vous voyez quelque chose comme suit :

Synchronization Rules Inbound

Dans ce volet, vous voyez toutes les règles de synchronisation créées pour votre configuration. Chaque ligne du tableau correspond à une règle de synchronisation. À gauche, sous Types de règles, deux types sont présentés : Entrante et Sortante. Les termes entrante et sortante sont à prendre du point de vue du métaverse. Vous allez principalement vous concentrer sur les règles de trafic entrant dans cette vue d’ensemble. La liste actuelle des règles de synchronisation dépend du schéma détecté dans Active Directory. Dans l’image ci-dessus, la forêt de comptes (fabrikamonline.com) ne dispose d’aucun service (par exemple, Exchange ou Lync), et aucune règle de synchronisation n’a été créée pour ces services. Toutefois, dans la forêt de ressources (res.fabrikamonline.com), vous trouvez des règles de synchronisation pour ces services. Le contenu des règles diffère selon la version détectée. Par exemple, dans un déploiement avec Exchange 2013, plus de flux d’attributs sont configurés que dans Exchange 2010/2007.

Règle de synchronisation

Une règle de synchronisation est un objet de configuration avec un jeu d’attributs qui circule quand une condition est remplie. Elle sert aussi à décrire la relation entre un objet dans un espace de connecteur et un objet dans le métaverse, relation appelée jointure ou correspondance. Les règles de synchronisation ont une valeur de précédence qui indique leurs relations les unes par rapport aux autres. Une règle de synchronisation avec une valeur plus basse possède une précédence plus élevée et, dans un conflit de flux d’attributs, c’est la précédence la plus élevée qui l’emporte.

En guise d’exemple, examinez la règle de synchronisation Entrant depuis AD – Utilisateur AccountEnabled. Marquez cette ligne dans l’outil SRE et sélectionnez Modifier.

Dans la mesure où il s’agit d’une règle out-of-box, vous recevez un avertissement à l’ouverture de la règle. Vous ne devez pas apporter de modifications aux règles out-of-boxvous êtes donc invité à indiquer vos intentions. Dans ce cas, vous souhaitez uniquement afficher la règle. Sélectionnez Non.

Synchronization Rules warning

Une règle de synchronisation comporte quatre sections de configuration : Description, Filtre d’étendue, Règles de jointure et Transformations.

Description

La première section fournit des informations de base telles que le nom et la description.

Description tab in Sync rule editor

Vous y trouverez également des informations concernant le système connecté associé à cette règle, le type d’objet dans le système connecté auquel il s’applique et le type d’objet de métaverse. Le type d’objet du métaverse est toujours « person », que le type d’objet source soit un utilisateur, iNetOrgPerson ou un contact. Comme il ne doit jamais changer, il est créé en tant que type générique. Le type de lien peut être Join, StickyJoin ou Provision. Ce paramètre fonctionne avec la section Règles de jointure et il est traité plus loin dans ce document.

Vous pouvez également voir que cette règle de synchronisation est utilisée pour la synchronisation de mot de passe. Si un utilisateur est dans la portée pour cette règle de synchronisation, le mot de passe est synchronisé du local vers le cloud (en supposant que vous avez activé la fonctionnalité de synchronisation de mot de passe).

Filtre d’étendue

La section Filtre d’étendue sert à configurer à quel moment une règle de synchronisation doit s’appliquer. Comme le nom de la règle de synchronisation que vous examinez indique qu’elle ne doit être appliquée qu’aux utilisateurs activés, l’étendue est configurée de sorte que l’attribut AD userAccountControl ne doive pas avoir le bit 2 défini. Lorsque le moteur de synchronisation détecte un utilisateur dans Active Directory, il applique la synchronisation lorsque userAccountControl est défini sur la valeur décimale 512 (utilisateur normal activé). Il n’applique pas la règle lorsque l’utilisateur a userAccountControl défini sur 514 (utilisateur normal désactivé).

Screenshot that shows the

Le filtre d’étendue possède des groupes et des clauses qui peuvent être imbriqués. Toutes les clauses à l’intérieur d’un groupe doivent être satisfaites pour qu’une règle de synchronisation s’applique. Quand plusieurs groupes sont définis, au moins l’un d’entre eux doit être satisfait pour que la règle s’applique. C’est-à-dire qu’une opération OR logique est évaluée entre les groupes et qu’une opération AND logique est évaluée à l’intérieur d’un groupe. On trouve un exemple de cette configuration dans la règle de synchronisation sortante Sortant vers Microsoft Entra ID – Group Join, indiquée ci-dessous. Il existe plusieurs groupes de filtres de synchronisation, par exemple, un pour les groupes de sécurité (securityEnabled EQUAL True) et un autre pour les groupes de distribution (securityEnabled EQUAL False).

Scoping tab in Sync rule editor

Cette règle sert à définir les groupes qui doivent être provisionnés dans Microsoft Entra ID. Les groupes de distribution doivent être à extension messagerie pour pouvoir être synchronisés avec Microsoft Entra ID, mais pour les groupes de sécurité aucune adresse e-mail n’est nécessaire.

Règles de jointure

La troisième section sert à configurer la relation entre les objets dans l’espace de connecteur et les objets dans le métaverse. La règle que vous avez examinée plus haut n’ayant aucune configuration pour Join Rules, vous allez plutôt examiner Entrant depuis AD – User Join.

Join rules tab in Sync rule editor

Le contenu de la règle de jointure dépend de l’option de correspondance sélectionnée dans l’Assistant Installation. Pour une règle entrante, l’évaluation commence avec un objet dans l’espace de connecteur source et chaque groupe dans les règles de jointure est évalué de manière séquentielle. Si un objet source évalué correspond exactement à un objet dans le métaverse selon l’une des règles de jointure, les deux objets sont joints. Si toutes les règles ont été évaluées et qu’il n’existe aucune correspondance, le type de lien indiqué dans la page de description est utilisé. Si cette configuration est définie sur Provisionner, un nouvel objet est créé dans la cible, le métaverse, si au moins un attribut dans les critères de jonction est présent (a une valeur). L’approvisionnement d’un nouvel objet dans le métaverse porte également le nom de projection .

Les règles de jointure ne sont évaluées qu’une seule fois. Quand un objet d’espace de connecteur et un objet de métaverse sont joints, ils le restent tant que l’étendue de la règle de synchronisation est encore satisfaite.

Lors de l’évaluation de plusieurs règles de synchronisation, une seule d’entre elles avec des règles de jointure définies doit être dans l’étendue. Si plusieurs règles de synchronisation avec des règles de jointure sont détectées pour un objet, une erreur est levée. Pour cette raison, la meilleure pratique consiste à n’avoir qu’une seule règle de synchronisation avec jointure définie quand plusieurs règles de synchronisation sont dans l’étendue pour un objet. Dans la configuration par défaut de Microsoft Entra Connect Sync, vous pouvez identifier facilement ces règles, car leur nom se termine par le mot Join . Une règle de synchronisation sans aucune règle de jointure définie applique les flux d’attributs lorsqu’une autre règle de synchronisation a joint les objets ensemble ou a approvisionné un nouvel objet dans la cible.

Si vous examinez l’illustration ci-dessus, vous pouvez voir que la règle essaie de joindre objectSID avec msExchMasterAccountSid (Exchange) et msRTCSIP-OriginatorSid (Lync), ce qui est le résultat que nous attendons dans une topologie de forêt de comptes/ressources. Vous trouverez la même règle sur toutes les forêts. L’hypothèse est que chaque forêt peut être une forêt de comptes ou de ressources. Cette configuration fonctionne également si vous disposez de comptes qui résident dans une forêt unique et n’ont pas à être joints.

Transformations

La section Transformation définit tous les flux d’attributs qui s’appliquent à l’objet cible quand les objets sont joints et quand le filtre d’étendue est satisfait. Si vous revenez à la règle de synchronisation Entrant depuis AD – Utilisateur AccountEnabled , vous trouvez les transformations suivantes :

Transformations tab in Sync rule editor

Pour mettre cette configuration en contexte, dans un déploiement de forêt Account-Resource, il devrait y avoir un compte activé dans la forêt de comptes et un compte désactivé dans la forêt de ressources avec des paramètres Exchange et Lync. La règle de synchronisation que vous examinez contient les attributs nécessaires pour la connexion et ceux-ci devraient circuler à partir de la forêt dans laquelle se trouve un compte activé. Tous ces flux d’attributs sont regroupés dans une règle de synchronisation.

Une transformation peut avoir différents types : Constant, Direct et Expression.

  • Un flux constant transmet toujours une valeur codée en dur. Dans le cas ci-dessus, il définit toujours la valeur True dans l’attribut du métaverse nommé accountEnabled.
  • Un flux direct transmet toujours la valeur de l’attribut source telle quelle vers l’attribut cible.
  • Le troisième type de flux, Expression, permet d’effectuer des configurations avancées.

Le langage d’expression étant VBA (Visual Basic pour Applications), les utilisateurs ayant une expérience de Microsoft Office ou VBScript reconnaîtront le format. Les attributs sont placés entre crochets : [nom_attribut]. Les noms des attributs et des fonctions respectent la casse, mais l’Éditeur de règles de synchronisation évalue les expressions et affiche un avertissement si elles ne sont pas valides. Toutes les expressions sont placées sur une seule ligne avec les fonctions imbriquées. Pour illustrer toute la puissance du langage de configuration, voici le flux pour pwdLastSet, mais avec des commentaires supplémentaires insérés :

// If-then-else
IIF(
// (The evaluation for IIF) Is the attribute pwdLastSet present in AD?
IsPresent([pwdLastSet]),
// (The True part of IIF) If it is, then from right to left, convert the AD time format to a .NET datetime, change it to the time format used by Azure AD, and finally convert it to a string.
CStr(FormatDateTime(DateFromNum([pwdLastSet]),"yyyyMMddHHmmss.0Z")),
// (The False part of IIF) Nothing to contribute
NULL
)

Pour plus d’informations sur le langage d’expression pour les flux d’attributs, consultez Présentation des expressions de l’approvisionnement déclaratif .

Priorité

Vous avez maintenant vu certaines règles de synchronisation individuelles, mais les règles fonctionnent de concert dans la configuration. Dans certains cas, une valeur d’attribut est partagée à partir de plusieurs règles de synchronisation vers le même attribut cible. Dans ce cas, la précédence d’attribut est utilisée pour déterminer quel attribut l’emporte. Par exemple, examinez l’attribut sourceAnchor. Cet attribut est important pour pouvoir se connecter à Microsoft Entra ID. Vous pouvez trouver un flux d’attributs pour cet attribut dans deux règles de synchronisation différentes : Entrant depuis AD – Utilisateur AccountEnabled et Entrant depuis AD – Utilisateur Common. En raison de la précédence de la règle de synchronisation, l’attribut sourceAnchor est partagé à partir de la forêt avec un compte activé en premier lieu lorsqu’il existe plusieurs objets joints à l’objet métaverse. S’il n’y a aucun compte activé, le moteur de synchronisation utilise la règle de synchronisation fourre-tout Entrant depuis AD – Utilisateur Common. Cette configuration garantit que même pour les comptes qui sont désactivés, il existe toujours un sourceAnchor.

Synchronization Rules Inbound

La précédence des règles de synchronisation est définie dans les groupes par l’Assistant d’installation. Toutes les règles d’un groupe ont le même nom, mais elles sont connectées à différents répertoires connectés. L’Assistant d’installation donne à la règle Entrant depuis AD – User Join la précédence la plus élevée et effectue une itération sur tous les répertoires AD connectés. Il continue ensuite avec les groupes de règles suivants dans un ordre prédéfini. À l’intérieur d’un groupe, les règles sont ajoutées dans l’ordre dans lequel les connecteurs ont été ajoutés à l’Assistant. Si un autre connecteur est ajouté via l’Assistant, les règles de synchronisation sont réordonnées et les règles du nouveau connecteur sont insérées en dernier dans chaque groupe.

Exemple complet

Nous en savons maintenant assez sur les règles de synchronisation pour comprendre le fonctionnement de la configuration avec les différentes règles de synchronisation. Si vous regardez un utilisateur et les attributs qui sont partagés avec le métaverse, les règles sont appliquées dans l’ordre suivant :

Nom Commentaire
Entrant depuis AD – User Join Règle pour joindre les objets de l’espace de connecteur avec métaverse.
Entrant depuis AD – Utilisateur AccountEnabled Attributs requis pour la connexion à Microsoft Entra ID et Microsoft 365. Nous voulons ces attributs à partir du compte activé.
Entrant depuis AD – Utilisateur Common à partir d’Exchange Attributs trouvés dans la liste d’adresses globale. Nous supposons que la qualité des données est meilleure dans la forêt où nous avons trouvé la boîte aux lettres de l’utilisateur.
Entrant depuis AD – Utilisateur Common Attributs trouvés dans la liste d’adresses globale. Dans le cas où nous ne trouvons pas de boîte aux lettres, tout autre objet joint peut contribuer à la valeur d’attribut.
Entrant depuis AD – Utilisateur Exchange Existe seulement si Exchange a été détecté. Transfère tous les attributs Exchange d’infrastructure.
Entrant depuis AD – Utilisateur Lync Existe seulement si Lync a été détecté. Transfère tous les attributs Lync d’infrastructure.

Étapes suivantes

Rubriques de présentation