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


Поставщик служб CSP политики — LocalUsersAndGroups

Настройка

Область применения Выпуски Применимая ОС
Устройство ✅
Пользователь ❌
✅ Pro
✅ Enterprise
✅ для образования
✅ Windows SE
✅ IIoT Enterprise или IoT Enterprise LTSC
✅ Windows 10 версии 20H2 [10.0.19042] и более поздних версий
./Device/Vendor/MSFT/Policy/Config/LocalUsersAndGroups/Configure

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

  1. Обновление членства в группе. Обновите группу и добавьте и (или) удалите участников с помощью действия "U". При использовании Обновления существующие члены группы, не указанные в политике, остаются нетронутыми.
  2. Заменить членство в группе: ограничьте группу, заменив членство в группе с помощью действия "R". При использовании функции Заменить существующее членство в группе заменяется списком участников, указанным в разделе добавления участника. Этот параметр работает так же, как и ограниченная группа, и все члены группы, не указанные в политике, удаляются.

Предостережение

Если для одной и той же группы настроены как варианты Заменять, так и Обновление, то команда Replace будет выиграна.

Примечание.

Параметр политики RestrictedGroups/ConfigureGroupMembership также позволяет настроить участников (пользователей или группы Microsoft Entra) в локальной группе Windows 10. Однако он позволяет полностью заменить существующие группы новыми участниками и не допускает выборочное добавление или удаление.

Начиная с Windows 10 версии 20H2, рекомендуется использовать политику LocalUsersAndGroups вместо политики RestrictedGroups. Применение обеих политик к одному и тому же устройству не поддерживается и может привести к непредсказуемым результатам.

Описание свойств инфраструктуры:

Имя свойства Значение свойства
Формат chr (строка)
Тип доступа Добавить, удалить, получить, заменить

Допустимые значения:


Развернуть, чтобы просмотреть XML-файл схемы
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" version="1.0">
  <xs:simpleType name="name">
    <xs:restriction base="xs:string">
      <xs:maxLength value="255" />
    </xs:restriction>
  </xs:simpleType>
  <xs:element name="accessgroup">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="group" minOccurs="1" maxOccurs="1">
          <xs:annotation>
            <xs:documentation>Group Configuration Action</xs:documentation>
          </xs:annotation>
          <xs:complexType>
            <xs:attribute name="action" type="name" use="required" />
          </xs:complexType>
        </xs:element>
        <xs:element name="add" minOccurs="0" maxOccurs="unbounded">
          <xs:annotation>
            <xs:documentation>Group Member to Add</xs:documentation>
          </xs:annotation>
          <xs:complexType>
            <xs:attribute name="member" type="name" use="required" />
          </xs:complexType>
        </xs:element>
        <xs:element name="remove" minOccurs="0" maxOccurs="unbounded">
          <xs:annotation>
            <xs:documentation>Group Member to Remove</xs:documentation>
          </xs:annotation>
          <xs:complexType>
            <xs:attribute name="member" type="name" use="required" />
          </xs:complexType>
        </xs:element>
        <xs:element name="property" minOccurs="0" maxOccurs="unbounded">
          <xs:annotation>
            <xs:documentation>Group property to configure</xs:documentation>
          </xs:annotation>
          <xs:complexType>
            <xs:attribute name="desc" type="name" use="required" />
            <xs:attribute name="value" type="name" use="required" />
          </xs:complexType>
        </xs:element>
      </xs:sequence>
      <xs:attribute name="desc" type="name" use="required" />
    </xs:complexType>
  </xs:element>
  <xs:element name="GroupConfiguration">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="accessgroup" minOccurs="0" maxOccurs="unbounded">
          <xs:annotation>
            <xs:documentation>Local Group Configuration</xs:documentation>
          </xs:annotation>
        </xs:element>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
</xs:schema>

Примеры:

Ниже приведен пример XML-кода определения политики для конфигурации группы:

<GroupConfiguration>
    <accessgroup desc = "">
        <group action = ""/>
            <add member = ""/>
            <remove member = ""/>
    </accessgroup>
</GroupConfiguration>

где:

  • <accessgroup desc>: указывает имя или идентификатор безопасности локальной группы для настройки. Если указать идентификатор безопасности, API LookupAccountSid используется для преобразования идентификатора безопасности в допустимое имя группы. Если указать имя, api LookupAccountName используется для поиска группы и проверки имени. Если поиск имени или идентификатора безопасности завершается сбоем, группа пропускается, а следующая группа в XML-файле обрабатывается. При наличии нескольких ошибок последняя ошибка возвращается в конце обработки политики.

  • <group action>: указывает действие, выполняемое с локальной группой, которая может быть обновлена и ограничена, представленными вами и R:

    • Обновление. Это действие должно использоваться для сохранения текущего членства в группе и добавления или удаления членов конкретной группы.
    • Ограничивать. Это действие должно использоваться для замены текущего членства новыми группами. Это действие предоставляет те же функции, что и параметр политики RestrictedGroups/ConfigureGroupMembership .
  • <add member>: указывает идентификатор безопасности или имя настраиваемого элемента.

  • <remove member>: указывает идентификатор безопасности или имя элемента, удаляемого из указанной группы.

    Примечание.

    При указании имен участников учетных записей пользователей необходимо использовать следующий формат : AzureAD\userUPN. Например, "AzureAD\user1@contoso.com" или "AzureAD\user2@contoso.co.uk". Для добавления групп Microsoft Entra необходимо указать идентификатор безопасности группы Microsoft Entra. Имена групп Microsoft Entra не поддерживаются этой политикой. Дополнительные сведения см. в разделе Функция LookupAccountNameA.

Сведения о создании пользовательских профилей см. в статье Использование пользовательских параметров для устройств с Windows 10 в Intune .

Важно.

  • <add member> и <remove member> может использовать идентификатор безопасности Microsoft Entra или имя пользователя. Для добавления или удаления групп Microsoft Entra с помощью этой политики необходимо использовать идентификатор безопасности группы. Идентификаторы безопасности групп Microsoft Entra можно получить с помощью API Graph для групп. Идентификатор безопасности присутствует в атрибуте securityIdentifier .
  • При указании идентификатора безопасности в <add member> или <remove member>идентификаторы безопасности членов добавляются без попытки их разрешения. Поэтому будьте очень осторожны при указании идентификатора безопасности, чтобы убедиться, что это правильно.
  • <remove member> недопустимый для действия R (Ограничить) и будет игнорироваться, если он присутствует.
  • Список в XML-коде обрабатывается в заданном порядке, за исключением действий R, которые обрабатываются последним, чтобы обеспечить их победу. Это также означает, что если группа присутствует несколько раз с разными значениями добавления и удаления, все они будут обрабатываться в том порядке, в который они присутствуют.

Пример 1. Ориентированный идентификатор Microsoft Entra.

В следующем примере встроенная группа администраторов обновляется с помощью sid S-1-5-21-22222222222222-3333333-44444444444444-500 с учетной записью Microsoft Entra "bob@contoso.com" и Группа Microsoft Entra с идентификатором безопасности S-1-12-1-111111111-222222222222233333333333-444444444444444444444444444 на компьютере, присоединенном к Microsoft Entra.

<GroupConfiguration>
    <accessgroup desc = "S-1-5-21-2222222222-3333333333-4444444444-500">
        <group action = "U" />
        <add member = "AzureAD\bob@contoso.com"/>
        <add member = "S-1-12-1-111111111-22222222222-3333333333-4444444444"/>
    </accessgroup>
</GroupConfiguration>

Пример 2. Замените или ограничьте встроенную группу администраторов учетной записью пользователя Microsoft Entra.

Примечание.

При использовании параметра "R" замените встроенную группу администраторов идентификатором безопасности S-1-5-222222222222222223333333333-4444444444444444444444444-500 всегда следует указывать администратора в качестве участника, а также любых других настраиваемых участников. Это необходимо, так как встроенный администратор всегда должен быть членом группы администраторов.

<GroupConfiguration>
    <accessgroup desc = "S-1-5-21-2222222222-3333333333-4444444444-500">
        <group action = "R" />
        <add member = "AzureAD\bob@contoso.com"/>
        <add member = "Administrator"/>
    </accessgroup>
</GroupConfiguration>

Пример 3. Действие обновления для добавления и удаления участников группы на компьютере с гибридным присоединением.

В следующем примере показано, как обновить локальную группу (администраторы с идентификатором безопасности S-1-5-22222222222222-333333333-444444444444444444-500) — добавить группу доменов AD в качестве участника, используя ее имя (Contoso\ITAd).mins), добавьте группу Microsoft Entra по идентификатору безопасности (S-1-12-1-111111111-222222222222222222223333333333-4444444444) и удалите локальную учетную запись (гостевая), если она существует.

<GroupConfiguration>
    <accessgroup desc = "S-1-5-21-2222222222-3333333333-4444444444-500">
        <group action = "U" />
        <add member = "Contoso\ITAdmins"/>
        <add member = "S-1-12-1-111111111-22222222222-3333333333-4444444444"/>
        <remove member = "Guest"/>
    </accessgroup>
</GroupConfiguration>

Примечание.

Когда идентификатор безопасности группы Microsoft Entra добавляется в локальные группы, привилегии входа в учетную запись Microsoft Entra оцениваются только для следующих хорошо известных групп на устройстве с Windows 10:

  • Администраторы
  • Пользователи
  • Гости
  • Опытные пользователи
  • Пользователи удаленного рабочего стола
  • Пользователи удаленного управления

Вопросы и ответы

В этом разделе приведены ответы на некоторые распространенные вопросы о CSP политики LocalUsersAndGroups.

Что произойдет, если я случайно удалю встроенный идентификатор безопасности администратора из группы администраторов?

Удаление встроенной учетной записи администратора из встроенной группы администраторов блокируется на уровне SAM/OS по соображениям безопасности. Попытка сделать это приведет к сбою со следующей ошибкой:

Код ошибки Символическое имя Описание ошибки Заголовок
0x55b (шестнадцатеричный)
1371 (Декабрь)
ERROR_SPECIAL_ACCOUNT Не удается выполнить эту операцию для встроенных учетных записей. winerror.h

При настройке встроенной группы администраторов с помощью действия R (Ограничить) укажите встроенный идентификатор безопасности или имя учетной записи администратора, <add member> чтобы избежать этой ошибки.

Можно ли добавить уже существующий член?

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

Можно ли удалить участника, если он не является членом группы?

Да, вы можете удалить участника, даже если он не является членом группы. Это не приведет к изменениям в группе и ошибкам.

Как добавить группу домена в качестве участника в локальную группу?

Чтобы добавить группу домена в качестве участника в локальную группу, укажите группу домена в <add member> локальной группе. Для достижения наилучших результатов используйте полные имена учетных записей (например, domain_name\group_name) вместо изолированных имен (например, group_name). Дополнительные сведения см. в разделе Функция LookupAccountNameA .

Можно ли применить несколько политик LocalUserAndGroups или XML к одному устройству?

Нет, это запрещено. Попытка сделать это приведет к конфликту в Intune.

Что произойдет, если указать имя группы, которая не существует?

Недопустимые имена групп или идентификаторы безопасности будут пропущены. Будут применены допустимые части политики, а в конце обработки будет возвращена ошибка. Это поведение согласуется с локальной политикой AD GPP (параметры групповой политики) LocalUsersAndGroups. Аналогичным образом будут пропущены недопустимые имена участников, а в конце будет возвращена ошибка, уведомляющая о том, что не все параметры успешно применены.

Что произойдет, если указать R и U в одном XML-коде?

Если указать R и U в одном XML-коде, действие R (Ограничить) имеет приоритет над U (Обновление). Таким образом, если группа отображается в XML-коде дважды, один раз с вами и снова с R, действие R победит.

Как проверить результат политики, применяемой на клиентском устройстве?

После применения политики на клиентском устройстве можно исследовать журнал событий, чтобы просмотреть результат:

  1. Откройте средство просмотра событий (eventvwr.exe).
  2. Перейдите в раздел Журналы> приложений и службMicrosoft>Windows>DeviceManagement-Enterprise-Diagnostics-Provider>Admin.
  3. Найдите строку для LocalUsersAndGroups просмотра соответствующих сведений.

Как устранить неполадки с API подстановки имен и идентификаторов безопасности?

Чтобы устранить неполадки с API подстановки имен и идентификаторов безопасности, выполните приведенные ниже действия.

  1. Включите lsp.log на клиентском устройстве, выполнив следующие команды:

    Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Lsa" -Name LspDbgInfoLevel -Value 0x800 -Type dword -Force
    Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Lsa" -Name LspDbgTraceOptions -Value 0x1 -Type dword -Force
    

    Отобразится файл lsp.log (C:\windows\debug\lsp.log). Этот файл журнала отслеживает разрешение SID-Name.

  2. Отключите ведение журнала, выполнив следующую команду:

    Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Lsa" -Name LspDbgInfoLevel -Value 0x0 -Type dword -Force
    Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Lsa" -Name LspDbgTraceOptions -Value 0x0 -Type dword -Force
    

Поставщик служб конфигурации политики