Поделиться через


Изменение статических групп на динамические группы членства в идентификаторе Microsoft Entra

Членство в группе можно изменить с статического на динамическую (или наоборот) в идентификаторе Microsoft Entra, часть Microsoft Entra. Идентификатор Microsoft Entra сохраняет одно и то же имя группы и идентификатор в системе, поэтому все существующие ссылки на группу по-прежнему действительны. Если вместо этого вы создадите новую группу, вам нужно будет обновить эти ссылки. Создание динамических групп членства устраняет затраты на управление добавлением и удалением пользователей. В этой статье показано, как преобразовать существующие группы из статического в динамические группы членства с помощью портала или командлетов PowerShell. В Microsoft Entra один клиент может иметь не более 15 000 динамических групп членства.

Предупреждение

При изменении существующей статической группы на динамическую из нее удаляются все участники, после чего обрабатывается правило членства для добавления новых участников. Если группа используется для управления доступом к приложениям и ресурсам, исходные участники могут временно утратить этот доступ, пока не завершится обработка правила членства.

Рекомендуется заранее проверить новое правило членства, чтобы убедиться в том, что оно соответствующим образом добавляет элементы в группу. Если во время теста возникают ошибки, см. статью "Устранение проблем с лицензией группы".

Изменение типа членства для группы

Следующие действия можно выполнить с помощью учетной записи, на которую назначена по крайней мере роль администратора групп.

  1. Войдите в Центр администрирования Microsoft Entra как минимум администратор групп.
  2. Выберите Microsoft Entra ID.
  3. Группы.
  4. В списке Все группы откройте группу, которую нужно изменить.
  5. Выберите Свойства.
  6. На странице Свойства группы в зависимости от требуемого типа членства выберите для параметра Тип членства значение "Assigned (static)" (Назначаемое (статическое)), "Динамический пользователь" или "Динамическое устройство". Для динамических групп членства можно использовать построитель правил для выбора вариантов простого правила или самостоятельного написания правила членства.

Ниже приведен пример изменения группы с статического на динамические группы членства для группы пользователей.

  1. На странице "Свойства" выбранной группы выберите тип членства динамического пользователя, а затем нажмите кнопку "Да" в диалоговом окне, объясняя изменения в динамических группах членства для продолжения.

    Снимок экрана: выбор типа членства динамического пользователя.

  2. Выберите Добавить динамический запрос, а затем укажите правило.

    Снимок экрана: ввод правила для динамической группы.

  3. После создания правила выберите Добавить запрос в нижней части страницы.

  4. Щелкните Сохранить на странице Свойства группы, чтобы сохранить изменения. Тип членства группы будет немедленно обновлен в списке групп.

Совет

Преобразование группы может завершиться ошибкой, если введено недопустимое правило членства. Уведомление будет отображаться в правом верхнем углу портала. В нем объясняется, почему правило не может быть принято системой. Внимательно прочитайте его, чтобы понять, как нужно изменить правило, чтобы оно стало допустимым. Примеры синтаксиса правил и полный список поддерживаемых свойств, операторов и значений правила членства см. в разделе "Управление правилами динамического членства" в идентификаторе Microsoft Entra.

Изменение типа членства для группы (PowerShell)

Примечание.

Чтобы изменить свойства динамической группы, необходимо использовать командлеты из модуля Microsoft Graph PowerShell. Дополнительные сведения см. в статье "Установка пакета SDK Для Microsoft Graph PowerShell".

Ниже приведен пример функций, которые переключают управление членством для существующей группы. В этом примере необходимо правильно управлять свойством GroupTypes и сохранять все значения, которые не связаны с динамическими группами членства.

#The moniker for dynamic membership groups as used in the GroupTypes property of a group object
$dynamicGroupTypeString = "DynamicMembership"

function ConvertDynamicGroupToStatic
{
    Param([string]$groupId)

    #existing group types
    [System.Collections.ArrayList]$groupTypes = (Get-MgGroup -GroupId $groupId).GroupTypes

    if($groupTypes -eq $null -or !$groupTypes.Contains($dynamicGroupTypeString))
    {
        throw "This group is already a static group. Aborting conversion.";
    }


    #remove the type for dynamic membership groups, but keep the other type values
    $groupTypes.Remove($dynamicGroupTypeString)

    #modify the group properties to make it a static group: i) change GroupTypes to remove the dynamic type, ii) pause execution of the current rule
    Update-MgGroup -GroupId $groupId -GroupTypes $groupTypes.ToArray() -MembershipRuleProcessingState "Paused"
}

function ConvertStaticGroupToDynamic
{
    Param([string]$groupId, [string]$dynamicMembershipRule)

    #existing group types
    [System.Collections.ArrayList]$groupTypes = (Get-MgGroup -GroupId $groupId).GroupTypes

    if($groupTypes -ne $null -and $groupTypes.Contains($dynamicGroupTypeString))
    {
        throw "This group is already a dynamic group. Aborting conversion.";
    }
    #add the dynamic group type to existing types
    $groupTypes.Add($dynamicGroupTypeString)

    #modify the group properties to make it a static group: i) change GroupTypes to add the dynamic type, ii) start execution of the rule, iii) set the rule
    Update-MgGroup -GroupId $groupId -GroupTypes $groupTypes.ToArray() -MembershipRuleProcessingState "On" -MembershipRule $dynamicMembershipRule
}

Вот как можно сделать группу статической.

ConvertDynamicGroupToStatic "a58913b2-eee4-44f9-beb2-e381c375058f"

Вот как можно сделать группу динамической.

ConvertStaticGroupToDynamic "a58913b2-eee4-44f9-beb2-e381c375058f" "user.displayName -startsWith ""Peter"""

Следующие шаги

В этих статьях содержатся дополнительные сведения о группах в идентификаторе Microsoft Entra.