Partager via


Créer des règles d’appartenance dynamique aux groupes plus simples et plus efficaces dans Microsoft Entra ID

L’équipe d’ingénierie de Microsoft Entra ID, qui fait partie de Microsoft Entra, reçoit des rapports d’incidents liés aux groupes dynamiques et au temps de traitement de leurs règles d’appartenance. Les informations signalées sont présentées dans cet article. Cet article traite également des méthodes les plus courantes par lesquelles Microsoft aide ses clients à simplifier leurs règles d’appartenance dynamique aux groupes. Des règles plus simples et plus efficaces entraînent une meilleure durée de traitement des groupes dynamiques.

Lorsque vous écrivez des règles d’appartenance dynamique aux groupes, procédez comme suit pour vous assurer de créer des règles aussi efficaces que possible.

Réduisez l’utilisation de MATCH

Réduisez l’utilisation de l’opérateur match dans les règles autant que possible. Au lieu de cela, explorez s'il est possible d'utiliser les opérateurs startswith, ou -eq. Envisagez d’utiliser d’autres propriétés qui vous permettent d’écrire des règles pour sélectionner les utilisateurs que vous souhaitez avoir dans le groupe sans utiliser l’opérateur -match. Par exemple, si vous souhaitez une règle pour le groupe pour tous les utilisateurs dont la ville est Lagos, au lieu d’utiliser des règles comme :

  • user.city -match "ago"
  • user.city -match ".*?ago.*"

Il est préférable d’utiliser des règles comme :

  • user.city -startswith "Lag"

Ou, le meilleur de tous :

  • user.city -eq "Lagos"

Réduire l’utilisation de CONTAINS

Semblable à l’utilisation de MATCH. Réduisez l’utilisation de l’opérateur contains dans les règles autant que possible. Au lieu de cela, explorez s'il est possible d'utiliser les opérateurs startswith, ou -eq. L’utilisation de CONTAINS peut accroître les temps de traitement, en particulier pour les locataires avec de nombreux groupes dynamiques.

Utiliser moins d’opérateurs OR

Dans votre règle, identifiez quand elle utilise différentes valeurs pour la même propriété liée aux opérateurs -or. Au lieu de cela, utilisez l’opérateur -in pour les regrouper en un seul critère pour faciliter l’évaluation de la règle. Par exemple, au lieu d’avoir une règle comme celle-ci :

(user.department -eq "Accounts" -and user.city -eq "Lagos") -or 
(user.department -eq "Accounts" -and user.city -eq "Ibadan") -or 
(user.department -eq "Accounts" -and user.city -eq "Kaduna") -or 
(user.department -eq "Accounts" -and user.city -eq "Abuja") -or 
(user.department -eq "Accounts" -and user.city -eq "Port Harcourt")

Il est préférable d’avoir une règle comme celle-ci :

  • user.department -eq "Accounts" -and user.city -in ["Lagos", "Ibadan", "Kaduna", "Abuja", "Port Harcourt"]

À l’inverse, identifiez les sous-critères similaires avec la même propriété qui n’est pas égale à diverses valeurs, liées aux opérateurs -and. Utilisez ensuite l’opérateur -notin pour les regrouper dans un critère unique pour faciliter la compréhension et l’évaluation de la règle. Par exemple, au lieu d’avoir une règle comme celle-ci :

  • (user.city -ne "Lagos") -and (user.city -ne "Ibadan") -and (user.city -ne "Kaduna") -and (user.city -ne "Abuja") -and (user.city -ne "Port Harcourt")

Il est préférable d’avoir une règle comme celle-ci :

  • user.city -notin ["Lagos", "Ibadan", "Kaduna", "Abuja", "Port Harcourt"]

Évitez les critères redondants

Vérifiez que vous n’utilisez pas de critères redondants dans votre règle. Par exemple, au lieu d’avoir une règle comme celle-ci :

  • user.city -eq "Lagos" or user.city -startswith "Lag"

Il est préférable d’avoir une règle comme celle-ci :

  • user.city -startswith "Lag"

Étapes suivantes