Criar regras mais simples e eficientes para grupos dinâmicos em Azure Ative Directory

A equipa de Azure Ative Directory (Azure AD), parte de Microsoft Entra, recebe relatos de incidentes relacionados com grupos dinâmicos e o tempo de processamento das suas regras de adesão. Este artigo utiliza essa informação reportada para apresentar os métodos mais comuns através dos quais a nossa equipa de engenharia ajuda os clientes a simplificar as suas regras de adesão. Regras mais simples e eficientes resultam em melhores tempos de processamento dinâmicos do grupo. Ao escrever regras de adesão para grupos dinâmicos, siga estes passos para garantir que as suas regras são o mais eficientes possível.

Minimizar o uso do MATCH

Minimize o uso do match operador nas regras o máximo possível. Em vez disso, explore se é possível usar o contains, startswithou -eq operadores. Considere utilizar outras propriedades que lhe permitam escrever regras para selecionar os utilizadores que pretende estar no grupo sem utilizar o -match operador. Por exemplo, se você quiser uma regra para o grupo para todos os utilizadores cuja cidade é Lagos, então em vez de usar regras como:

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

É melhor usar regras como:

  • user.city -contains "ago"
  • user.city -startswith "Lag"

Ou, o melhor de tudo:

  • user.city -eq "Lagos"

Utilizar menos operadores de OR

Na sua regra, identifique quando utiliza vários valores para o mesmo imóvel ligados juntamente com -or os operadores. Em vez disso, utilize o -in operador para agrupar num único critério para facilitar a avaliação da regra. Por exemplo, em vez de ter uma regra como esta:

(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")

É melhor ter uma regra como esta:

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

Inversamente, identificar sub critérios semelhantes com a mesma propriedade não é igual a vários valores, que estão ligados aos -and operadores. Em seguida, utilize o -notin operador para agrupar num único critério para facilitar a compreensão e avaliação da regra. Por exemplo, em vez de usar uma regra como esta:

  • (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")

É melhor usar uma regra como esta:

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

Evitar critérios redundantes

Certifique-se de que não está a usar critérios redundantes na sua regra. Por exemplo, em vez de usar uma regra como esta:

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

É melhor usar uma regra como esta:

  • user.city -startswith "Lag"

Passos seguintes