Filtre d’étendue et mappage d’attributs – De Microsoft Entra ID vers Active Directory
Vous pouvez personnaliser les mappages d’attributs par défaut en fonction des besoins de votre organisation. Vous pouvez ainsi modifier ou supprimer des mappages d’attributs existants ou en créer de nouveaux.
Le document suivant vous guide tout au long du processus de définition de l’étendue d’attributs avec la synchronisation cloud Microsoft Entra pour un approvisionnement de Microsoft Entra ID vers Active Directory. Si vous recherchez des informations sur le mappage d’attributs d’AD vers Microsoft Entra ID, consultez Mappage d’attributs – Active Directory vers Microsoft Entra ID.
Schéma pour les configurations Microsoft Entra ID vers Active Directory
Actuellement, le schéma AD n’est pas détectable et un ensemble fixe de mappages existe. Le tableau suivant fournit les mappages et schémas par défaut pour les configurations Microsoft Entra ID vers Active Directory.
Attribut cible | Attribut source | Type de mappage | Notes |
---|---|---|---|
adminDescription | Append("Group_",[objectId]) | Expression | MISE À JOUR IMPOSSIBLE DANS L’INTERFACE UTILISATEUR – NE PAS METTRE À JOUR Utilisé pour filtrer la synchronisation d’AD vers le cloud Non visible dans l’interface utilisateur |
cn | Append(Append(Left(Trim([displayName]),51),"_"),Mid([objectId],25,12)) | Expression | |
description | Left(Trim([description]),448) | Expression | |
displayName | displayName | Direct | |
isSecurityGroup | True | Constant | MISE À JOUR IMPOSSIBLE DANS L’INTERFACE UTILISATEUR – NE PAS METTRE À JOUR Non visible dans l’interface utilisateur |
member | membres | Direct | MISE À JOUR IMPOSSIBLE DANS L’INTERFACE UTILISATEUR – NE PAS METTRE À JOUR Non visible dans l’interface utilisateur |
msDS-ExternalDirectoryObjectId | Append("Group_",[objectId]) | Expression | MISE À JOUR IMPOSSIBLE DANS L’INTERFACE UTILISATEUR – NE PAS METTRE À JOUR Utilisé pour la jointure ou la mise en correspondance dans AD Non visible dans l’interface utilisateur |
ObjectGUID | MISE À JOUR IMPOSSIBLE DANS L’INTERFACE UTILISATEUR – NE PAS METTRE À JOUR En lecture seule – Ancre dans AD Non visible dans l’interface utilisateur |
||
parentDistinguishedName | OU=Users,DC=<domaine sélectionné au début de la configuration>,DC=com | Constant | Par défaut dans l’interface utilisateur |
UniversalScope | True | Constant | MISE À JOUR IMPOSSIBLE DANS L’INTERFACE UTILISATEUR – NE PAS METTRE À JOUR Non visible dans l’interface utilisateur |
Souvenez-vous que tous les mappages ci-dessus ne sont pas visibles dans le portail. Pour plus d’informations sur comment ajouter un mappage d’attributs, consultez Mappage d’attributs.
Mappage personnalisé de sAmAccountName
Par défaut, l’attribut sAMAccount n’est pas synchronisé de Microsoft Entra ID vers Active Directory. Pour cette raison, quand le nouveau groupe est créé dans Active Directory, il reçoit un nom généré de manière aléatoire.
Si vous voulez votre propre valeur unique pour sAMAccountName, vous pouvez créer un mappage personnalisé vers sAMAccountName en utilisant une expression. Par exemple, vous pouvez utiliser quelque chose comme : Join("_", [displayName], "Contoso_Group")
Ceci va prendre la valeur de displayName et y ajouter « Contoso_Group ». Ainsi, le nouveau sAMAccountName peut devenir par exemple « Marketing_Contoso_Group ».
Important
Si vous décidez de créer un mappage d’attribut personnalisé pour sAMAccountName, vous devez vous assurer qu’il est unique dans Active Directory.
Conteneur cible de filtres d’étendue
Le conteneur cible par défaut est OU=User,DC=<domaine sélectionné au début de la configuration>,DC=com. Vous pouvez le remplacer par votre propre conteneur personnalisé.
Il est également possible de configurer plusieurs conteneurs cibles en utilisant une expression de mappage d’attributs avec la fonction Switch(). Avec cette expression, si la valeur displayName est Marketing ou Sales, le groupe est créé dans l’unité d’organisation correspondante. Si aucune correspondance n’est trouvée, le groupe est alors créé dans l’unité d’organisation par défaut.
Switch([displayName],"OU=Default,OU=container,DC=contoso,DC=com","Marketing","OU=Marketing,OU=container,DC=contoso,DC=com","Sales","OU=Sales,OU=container,DC=contoso,DC=com")
Un autre exemple est présenté ci-dessous. Imaginez que vous disposez des trois groupes suivants et qu’ils présentent les valeurs d’attribut displayName suivantes :
- NA-Sales-Contoso
- SA-Sales-Contoso
- EU-Sales-Contoso
Vous pouvez utiliser l’instruction switch suivante pour filtrer et approvisionner les groupes :
Switch(Left(Trim([displayName]), 2), "OU=Groups,DC=contoso,DC=com", "NA","OU=NorthAmerica,DC=contoso,DC=com", "SA","OU=SouthAmerica,DC=contoso,DC=com", "EU", "OU=Europe,DC=contoso,DC=com")
Par défaut, cette instruction approvisionne tous les groupes dans le conteneur OU=Groups,DC=contoso,DC=com dans Active Directory. Cependant, si le groupe commence par NA, il approvisionne le groupe dans OU=NorthAmerica,DC=contoso,DC=com. De même, si le groupe commence par SA, il s’agit de OU=SouthAmerica,DC=contoso,DC=com, et pour EU, il s’agit de OU=Europe,DC=contoso,DC=com.
Pour plus d’informations, consultez Informations de référence sur l’écriture d’expressions pour les mappages d’attributs dans Microsoft Entra ID.
Filtrage d’étendue d’attributs
Le filtrage d’étendue basé sur des attributs est pris en charge. Vous pouvez étendre des groupes en fonction de certains attributs. Toutefois, sachez que la section de mappage d’attributs d’une configuration Microsoft Entra ID vers Active Directory est légèrement différente de la section de mappage d’attributs classique.
Clauses prises en charge
Un filtre d’étendue se compose d’une ou plusieurs clauses. Les clauses déterminent quels groupes sont autorisés à traverser le filtrage d’étendue en évaluant les attributs de chaque groupe. Par exemple, vous pouvez avoir une clause qui nécessite qu’un attribut « displayName » de groupes soit égal à « Marketing », de sorte que seuls les groupes Marketing sont approvisionnés.
Regroupement de sécurité par défaut
Le regroupement de sécurité par défaut est appliqué au-dessus de chaque clause créée et utilise la logique « AND ». Il contient les conditions suivantes :
- securityEnabled IS True AND
- dirSyncEnabled IS FALSE AND
- mailEnabled IS FALSE
Le regroupement de sécurité par défaut est toujours appliqué en premier et utilise la logique AND lors de l’utilisation d’une clause unique. La clause suit ensuite la logique décrite ci-dessous.
Une seule clause définit une condition unique pour une seule valeur d’attribut. Si plusieurs clauses sont créées dans un seul filtre d’étendue, ils sont évalués ensemble en utilisant la logique « ET ». La logique « ET » signifie que chacune des clauses doit être considérée « vraie » pour qu’un utilisateur soit approvisionné.
Enfin, plusieurs filtres d’étendue peuvent être créés pour un groupe. Si plusieurs filtres d’étendue sont présents, ils sont évalués ensemble en utilisant la logique « OU ». La logique « OR » signifie que si l’une des clauses présentes dans un seul des filtres d’étendue configurés est considérée « true », le groupe est approvisionné.
Opérateurs pris en charge
Les opérateurs suivants sont pris en charge :
Opérateur | Description |
---|---|
& | |
ENDS_WITH | |
EQUALS | La clause renvoie « true » si l’attribut évalué correspond exactement à la valeur de chaîne d’entrée (respecte la casse). |
GREATER_THAN | La clause renvoie « true » si l’attribut évalué est supérieur à la valeur. La valeur indiquée dans le filtre d’étendue doit être un nombre entier et l’attribut de l’utilisateur doit être un nombre entier [0, 1, 2,...]. |
GREATER_THAN_OR_EQUALS | La clause renvoie « true » si l’attribut évalué est supérieur ou égal à la valeur. La valeur indiquée dans le filtre d’étendue doit être un nombre entier et l’attribut de l’utilisateur doit être un nombre entier [0, 1, 2,...]. |
INCLUDES | |
IS FALSE | La clause renvoie « true » si l’attribut évalué contient une valeur booléenne True. |
IS_MEMBER_OF | |
n’est pas NULL | La clause renvoie « true » si l’attribut évalué n’est pas vide. |
IS NULL | La clause renvoie « true » si l’attribut évalué est vide. |
IS TRUE | La clause renvoie « true » si l’attribut évalué contient une valeur booléenne True. |
!&L | |
NOT EQUALS | La clause renvoie « true » si l’attribut évalué ne correspond pas à la valeur de chaîne d’entrée (respecte la casse). |
NOT REGEX MATCH | La clause renvoie « true » si l’attribut évalué ne correspond pas à un modèle d’expression régulière. La valeur « false » est retournée si l’attribut est null/vide. |
PRESENT | |
REGEX MATCH | La clause renvoie « true » si l’attribut évalué correspond à un modèle d’expression régulière. Exemple : ([1-9][0-9]) correspond à tout nombre compris entre 10 et 99 (sensible à la casse). |
VALID CERT MATCH |
Utilisation d’expressions régulières pour filtrer
Un filtre plus avancé peut utiliser un opérateur REGEX MATCH. Cela vous permet de rechercher dans un attribut une sous-chaîne de cet attribut. Par exemple, supposons que vous disposez de plusieurs groupes et qu’ils présentent tous les descriptions suivantes :
Contoso-Sales-US Contoso-Marketing-US Contoso-Operations-US Contoso-LT-US
Maintenant, vous souhaitez uniquement approvisionner les groupes Sales, Marketing et Operations dans Active Directory. Pour ce faire, vous pouvez utiliser un opérateur REGEX MATCH.
REGEX MATCH description (?:^|\W)Sales|Marketing|Operations(?:$|\W)
Cet opérateur REGEX MATCH recherche dans les descriptions l’un des mots suivants que nous avons indiqués et approvisionne uniquement ces groupes.
Créer un filtre basé sur des attributs
Pour créer un filtre basé sur des attributs, procédez ainsi :
- Cliquez sur Ajouter un filtre d’attributs
- Dans la zone Nom, indiquez le nom de votre filtre
- Dans la liste déroulante, sous Attribut cible sélectionnez l’attribut cible
- Sous Opérateur, sélectionnez un opérateur.
- Sous Valeur, spécifiez une valeur.
- Cliquez sur Enregistrer.
Pour plus d’informations, consultez Mappage d’attributs et Information de référence sur l’écriture d’expressions pour les mappages d’attributs dans Microsoft Entra ID.