Создание XML-файла конфигурации назначенного доступа

Чтобы настроить назначенный доступ, необходимо создать и применить XML-файл конфигурации к устройствам. Файл конфигурации должен соответствовать схеме, как определено в разделе Определение схемы XML для назначенного доступа (XSD).

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

Начнем с рассмотрения базовой структуры XML-файла. Файл конфигурации назначенного доступа содержит:

  • Один или несколько profiles. Каждый из них profile определяет набор приложений, которые разрешено запускать.
  • Один или несколько configs. Каждый из них config связывает учетную запись пользователя или группу с profile

Ниже приведен базовый пример файла конфигурации назначенного доступа с одним профилем и одной конфигурацией:

<?xml version="1.0" encoding="utf-8" ?>
<AssignedAccessConfiguration xmlns="http://schemas.microsoft.com/AssignedAccess/2017/config">
    <Profiles>
        <Profile Id="{GUID}">
            <!-- Add configuration here as needed -->
        </Profile>
    </Profiles>
    <Configs>
        <Config>
            <!-- Add configuration here as needed -->
        </Config>
    </Configs>
</AssignedAccessConfiguration>

Управление версиями

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

Версия Alias Пространство имен
Windows 11 версии 22H2 v5 http://schemas.microsoft.com/AssignedAccess/2022/config
Windows 11 версии 21H2 v4 http://schemas.microsoft.com/AssignedAccess/2021/config
Windows 10 v5 http://schemas.microsoft.com/AssignedAccess/202010/config
Windows 10 v3 http://schemas.microsoft.com/AssignedAccess/2020/config
Windows 10 rs5 http://schemas.microsoft.com/AssignedAccess/201810/config
Windows 10 default http://schemas.microsoft.com/AssignedAccess/2017/config

Чтобы авторизовать совместимый XML-файл конфигурации, включающий элементы и атрибуты, относящиеся к конкретной версии, всегда включите пространство имен схем надстроек и декорируйте атрибуты и элементы соответствующим образом псевдонимом пространства имен. Например, чтобы настроить функциюStartPins, добавленную в Windows 11 версии 22H2, используйте приведенный ниже пример. Обратите внимание на псевдоним, v5 связанный с пространством http://schemas.microsoft.com/AssignedAccess/2022/config имен для выпуска 22H2, и псевдоним помечен StartPins как встроенный.

<?xml version="1.0" encoding="utf-8" ?>
<AssignedAccessConfiguration xmlns="http://schemas.microsoft.com/AssignedAccess/2017/config"
    xmlns:v5="http://schemas.microsoft.com/AssignedAccess/2022/config">
    <Profiles>
        <Profile Id="{GUID}">
            <!-- Add configuration here as needed -->
            <v5:StartPins>
              <!-- Add StartPins configuration here -->
            </v5:StartPins>
        </Profile>
    </Profiles>
    <Configs>
        <Config>
            <!-- Add configuration here as needed -->
        </Config>
    </Configs>
</AssignedAccessConfiguration>

Здесь вы можете найти определения XML-схемы назначенного доступа: Определение xml-схемы назначенного доступа (XSD).

Профили

Файл конфигурации может содержать один или несколько профилей. Каждый профиль идентифицируется уникальным идентификатором Profile Id и, при необходимости, .Name Пример:

<Profiles>
  <Profile Id="{EDB3036B-780D-487D-A375-69369D8A8F78}" Name="Microsoft Learn example">
    <!-- Add configuration here as needed -->
  </Profile>
</Profiles>

Совет

Объект Profile Id должен быть уникальным внутри XML-файла. Идентификатор GUID можно создать с помощью командлета New-GuidPowerShell .

Профиль может быть одного из двух типов:

  • KioskModeApp: используется для настройки интерфейса киоска. Пользователи, назначенные этому профилю, не получают доступ к рабочему столу, но только к приложению универсальная платформа Windows (UWP) или Microsoft Edge, работающему в полноэкранном режиме над экраном блокировки
  • AllAppList используется для настройки ограниченного взаимодействия с пользователем. Пользователи, назначенные этому профилю, получают доступ к рабочему столу с определенными приложениями в меню "Пуск"

Важно.

  • Вы не можете задать одновременно и то KioskModeApp , и ShellLauncher другое на устройстве
  • Файл конфигурации может содержать только один KioskModeApp профиль, но он может содержать несколько AllAppList профилей.

KioskModeApp

KioskModeApp Свойства профиля:

Свойство Описание Сведения
AppUserModelId Идентификатор модели пользователя приложения (AUMID) приложения UWP. Узнайте, как найти идентификатор модели пользователя приложения для установленного приложения.
v4:ClassicAppPath Полный путь к исполняемому файлу классического приложения. Это путь к классическому приложению, используемому в режиме киоска. Путь может содержать системные переменные среды в виде %variableName%.
v4:ClassicAppArguments Аргументы, передаваемые классическому приложению. Это свойство является необязательным.

По умолчанию для выхода из режима киоска можно использовать последовательность CTRL+ALT+DEL . Вы можете определить BreakoutSequence элемент для изменения последовательности по умолчанию. Атрибут Key представляет собой строку, представляющую сочетание клавиш.

Пример двух профилей: классическое приложение и приложение UWP:

<Profile Id="{EDB3036B-780D-487D-A375-69369D8A8F78}">
  <KioskModeApp v4:ClassicAppPath="%ProgramFiles(x86)%\Microsoft\Edge\Application\msedge.exe" v4:ClassicAppArguments="--kiosk https://www.contoso.com/ --edge-kiosk-type=fullscreen --kiosk-idle-timeout-minutes=2" />
  <v4:BreakoutSequence Key="Ctrl+A"/>
</Profile>
<Profile Id="{EDB3036B-780D-487D-A375-69369D8A8F79}">
  <KioskModeApp AppUserModelId="Microsoft.BingWeather_8wekyb3d8bbwe!App" />
</Profile>

Примечание.

Профиль можно назначать KioskModeApp только пользователям, а не группам.

AllAppList

В зависимости от назначения устройства в режиме терминала, задайте список приложений, разрешенных для запуска. Этот список может содержать приложения UWP и классические приложения. При применении конфигурации терминала mult-app к устройству создаются правила AppLocker, разрешающие приложения, перечисленные в конфигурации.

Примечание.

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

В узле определите AllAppList список приложений, которые разрешено выполнять. Каждый App элемент имеет следующие свойства:

Свойство Описание Сведения
AppUserModelId Идентификатор модели пользователя приложения (AUMID) приложения UWP. Узнайте, как найти идентификатор модели пользователя приложения для установленного приложения.
DesktopAppPath Полный путь к исполняемому файлу классического приложения. Это путь к классическому приложению, используемому в режиме киоска. Путь может содержать системные переменные среды в виде %variableName%.
rs5:AutoLaunch Логический атрибут, указывающий, следует ли автоматически запускать приложение (классическое приложение или приложение UWP) при входе пользователя. Это свойство является необязательным. Только одно приложение может автоматически запуститься.
rs5:AutoLaunchArguments Аргументы, передаваемые в приложение, которое настроено с помощью AutoLaunch. AutoLaunchArguments передаются в приложения как есть, и приложению необходимо явно обрабатывать аргументы. Это свойство является необязательным.

Пример.

<AllAppsList>
  <AllowedApps>
    <App AppUserModelId="Microsoft.WindowsCalculator_8wekyb3d8bbwe!App" />
    <App DesktopAppPath="C:\Windows\system32\cmd.exe" />
    <App DesktopAppPath="%windir%\explorer.exe" />
    <App AppUserModelId="%ProgramFiles(x86)%\Microsoft\Edge\Application\msedge.exe" />
    <App DesktopAppPath="C:\Windows\System32\notepad.exe" rs5:AutoLaunch="true" rs5:AutoLaunchArguments="%windir%\setuperr.log" />
  </AllowedApps>
</AllAppsList>

ограничения проводник

В ограниченном пользовательском интерфейсе (AllAppList) просмотр папок по умолчанию заблокирован. Вы можете явно разрешить доступ к известным папкам, включив узел FileExplorerNamespaceRestrictions .

Вы можете указать доступ пользователя к папке Downloads, съемным дискам или вообще без ограничений. Загрузка и съемные диски могут быть разрешены одновременно.

<Profiles>
    <Profile Id="{EDB3036B-780D-487D-A375-69369D8A8F78}" Name="Microsoft Learn example">
        <AllAppsList>
            <AllowedApps>
                <!-- Add configuration here as needed -->
            </AllowedApps>
        </AllAppsList>
        <rs5:FileExplorerNamespaceRestrictions>
            <!-- Add configuration here as needed -->
        </rs5:FileExplorerNamespaceRestrictions>
        <!-- Add configuration here as needed -->
    </Profile>
</Profiles>

Вот несколько практических примеров.

Блокировать все

Не используйте узел или оставьте его пустым.

<rs5:FileExplorerNamespaceRestrictions>
</rs5:FileExplorerNamespaceRestrictions>

Разрешить только скачивание

<rs5:FileExplorerNamespaceRestrictions>
    <rs5:AllowedNamespace Name="Downloads"/>
</rs5:FileExplorerNamespaceRestrictions>

Разрешить только съемные диски

<rs5:FileExplorerNamespaceRestrictions>
    <v3:AllowRemovableDrives />
</rs5:FileExplorerNamespaceRestrictions>

Разрешить скачивание и съемные диски

<rs5:FileExplorerNamespaceRestrictions>
    <rs5:AllowedNamespace Name="Downloads"/>
    <v3:AllowRemovableDrives/>
</rs5:FileExplorerNamespaceRestrictions>

Нет ограничений, все расположения разрешены

<rs5:FileExplorerNamespaceRestrictions>
    <v3:NoRestriction />
</rs5:FileExplorerNamespaceRestrictions>

Совет

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

Настройки меню "Пуск"

Для ограниченного профиля взаимодействия с пользователем (AllAppList) необходимо определить макет начального экрана. Макет "Пуск" содержит список приложений, закрепленных в меню "Пуск". Вы можете закрепить все разрешенные приложения в меню Пуск или в подмножестве. Самый простой способ создать настраиваемый макет "Пуск" — настроить меню "Пуск" на тестовом устройстве, а затем экспортировать макет.

Сведения о настройке и экспорте конфигурации меню "Пуск" см . в статье Настройка меню "Пуск".

В экспортируемой конфигурации меню "Пуск" используйте StartLayout элемент и добавьте содержимое XML-файла. Пример:

<StartLayout>
  <![CDATA[
    <!-- Add your exported Start menu XML configuration file here -->
  ]]>
</StartLayout>

Пример с закреплением некоторых приложений:

<StartLayout>
  <![CDATA[
    <LayoutModificationTemplate xmlns:defaultlayout="http://schemas.microsoft.com/Start/2014/FullDefaultLayout"
    xmlns:start="http://schemas.microsoft.com/Start/2014/StartLayout" Version="1"
    xmlns="http://schemas.microsoft.com/Start/2014/LayoutModification">
      <LayoutOptions StartTileGroupCellWidth="6" />
      <DefaultLayoutOverride>
        <StartLayoutCollection>
          <defaultlayout:StartLayout GroupCellWidth="6">
            <start:Group Name="Group1">
              <start:Tile Size="4x4" Column="0" Row="0" AppUserModelID="Microsoft.  ZuneMusic_8wekyb3d8bbwe!Microsoft.ZuneMusic" />
              <start:Tile Size="2x2" Column="4" Row="2" AppUserModelID="Microsoft.  ZuneVideo_8wekyb3d8bbwe!Microsoft.ZuneVideo" />
            </start:Group>
            <start:Group Name="Group2">
              <start:DesktopApplicationTile Size="2x2" Column="2" Row="0"   DesktopApplicationLinkPath="%ALLUSERSPROFILE%\Microsoft\Windows\Start   Menu\Programs\Accessories\Paint.lnk" />
              <start:DesktopApplicationTile Size="2x2" Column="0" Row="0"   DesktopApplicationLinkPath="%APPDATA%\Microsoft\Windows\Start Menu\Programs\Accessories\Notepad.  lnk" />
            </start:Group>
          </defaultlayout:StartLayout>
        </StartLayoutCollection>
      </DefaultLayoutOverride>
    </LayoutModificationTemplate>
  ]]>
</StartLayout>

В экспортируемой конфигурации меню "Пуск" используйте v5:StartPins элемент и добавьте содержимое экспортированного JSON-файла. Пример:

<v5:StartPins>
  <![CDATA[
      <!-- Add your exported Start menu JSON configuration file here -->
  ]]>
</v5:StartPins>

Пример с закреплением некоторых приложений:

<v5:StartPins>

</v5:StartPins>

Примечание.

Если приложение не установлено для пользователя, но включено в XML-код макета начального экрана, оно не отображается на начальном экране.

Настройки панели задач

Вы не можете закрепить приложения на панели задач в ограниченном пользовательском интерфейсе. Настройка макета панели задач с помощью <CustomTaskbarLayoutCollection> тега в XML-файле изменения макета в рамках конфигурации назначенного доступа не поддерживается.

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

В следующем примере отображается панель задач:

<Taskbar ShowTaskbar="true"/>

Следующий пример скрывает панель задач:

<Taskbar ShowTaskbar="false"/>

Примечание.

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

Панель задач можно настроить, создав пользовательский макет и добавив его в XML-файл. Сведения о настройке и экспорте конфигурации панели задач см. в разделе Настройка панели задач.

Примечание.

В Windows 11 ShowTaskbar атрибут имеет значение no-op. Настройте его со значением true.

В экспортируемой конфигурации панели задач используйте v5:TaskbarLayout элемент и добавьте содержимое XML-файла. Пример:

<Taskbar ShowTaskbar="true" />
<v5:TaskbarLayout><![CDATA[
  <!-- Add your exported Taskbar XML configuration file here -->
  ]]>
</v5:TaskbarLayout>

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

<Taskbar ShowTaskbar="true" />
<v5:TaskbarLayout><![CDATA[
  <?xml version="1.0" encoding="utf-8"?>
  <LayoutModificationTemplate
      xmlns="http://schemas.microsoft.com/Start/2014/LayoutModification"
      xmlns:defaultlayout="http://schemas.microsoft.com/Start/2014/FullDefaultLayout"
      xmlns:start="http://schemas.microsoft.com/Start/2014/StartLayout"
      xmlns:taskbar="http://schemas.microsoft.com/Start/2014/TaskbarLayout"
      Version="1">
  <CustomTaskbarLayoutCollection>
    <defaultlayout:TaskbarLayout>
    <taskbar:TaskbarPinList>
        <taskbar:DesktopApp DesktopApplicationID="Microsoft.Windows.Explorer" />
        <taskbar:DesktopApp DesktopApplicationID="windows.immersivecontrolpanel_cw5n1h2txyewy!microsoft.windows.immersivecontrolpanel" />
        <taskbar:DesktopApp DesktopApplicationLinkPath="%ALLUSERSPROFILE%\Microsoft\Windows\Start Menu\Programs\Microsoft Edge.lnk"/>
    </taskbar:TaskbarPinList>
    </defaultlayout:TaskbarLayout>
  </CustomTaskbarLayoutCollection>
  </LayoutModificationTemplate>
  ]]>
</v5:TaskbarLayout>

Configs

В разделе Configsопределите одну или несколько учетных записей пользователей или группы и их связь с профилем.

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

Вы можете назначить:

  • Учетная запись стандартного пользователя, которая может быть локальной, доменной или Microsoft Entra ID
  • Учетная запись группы, которая может быть локальной, Active Directory (домен) или Microsoft Entra ID

Ограничения:

  • Конфигурации, указывающие учетные записи групп, не могут использовать профиль киоска, только ограниченный профиль взаимодействия с пользователем.
  • Применять ограниченный пользовательский интерфейс только к стандартным пользователям. Не поддерживается связывание администратора с профилем назначенного доступа.
  • Не применяйте профиль к пользователям или группам, на которые нацелены политики условного доступа, требующие взаимодействия с пользователем. Например, многофакторная проверка подлинности (MFA) или Условия использования (TOU). Дополнительные сведения см. в статье Пользователи не могут войти в Windows, если назначен профиль киоска с несколькими приложениями.

Примечание.

На Microsoft Entra присоединенных устройствах и устройствах, присоединенных к домену, локальные учетные записи пользователей по умолчанию не отображаются на экране входа. Чтобы отобразить локальные учетные записи на экране входа, включите параметр политики:

  • Объект групповой политики. Конфигурация компьютера>Административные шаблоны>Системный>вход>Перечисление локальных пользователей на компьютерах, присоединенных к домену
  • CSP: ./Device/Vendor/MSFT/Policy/Config/WindowsLogon/EnumerateLocalUsersOnDomainJoinedComputers

Учетная запись autoLogon

С помощью <AutoLogonAccount>назначенного доступа создает учетную запись пользователя и управляет ею для автоматического входа после перезапуска устройства. Учетная запись является локальным стандартным пользователем.

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

<Configs>
  <Config>
    <AutoLogonAccount rs5:DisplayName="Microsoft Learn example"/>
    <DefaultProfile Id="{GUID}"/>
  </Config>
</Configs>

Важно.

Если на устройстве активны ограничения паролей exchange Active Sync (EAS), функция автоматического входа не работает. Это поведение реализовано намеренно. Дополнительные сведения см. в разделе Как включить автоматический вход в Windows.

Глобальный профиль

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

<Configs>
  <v3:GlobalProfile Id="{GUID}"/>
</Configs>

Примечание.

Глобальный профиль можно объединить с другими профилями. Если назначить пользователю не глобальный профиль, глобальный профиль не будет применяться к нему.

Учетные записи пользователей

Отдельные учетные записи задаются с помощью <Account>.

Важно.

Перед применением конфигурации назначенного доступа убедитесь, что указанная учетная запись пользователя доступна на устройстве. В противном случае произойдет сбой.

Для доменных и Microsoft Entra учетных записей, если устройство присоединено к Active Directory или Microsoft Entra присоединено, учетную запись можно обнаружить в лесу домена или клиенте, к которому присоединено устройство. Для локальных учетных записей требуется, чтобы учетная запись существовала до того, как вы настроите учетную запись для ограниченного доступа.

Локальный пользователь

Локальную учетную запись можно ввести как devicename\user, .\userили просто user.

<Config>
  <Account>user</Account>
  <DefaultProfile Id="{GUID}"/>
</Config>

Пользователь Active Directory

Учетные записи домена должны вводиться в формате domain\samAccountName.

<Config>
  <Account>contoso\user</Account>
  <DefaultProfile Id="{GUID}"/>
</Config>

Microsoft Entra пользователя

Microsoft Entra учетные записи должны быть указаны в формате : AzureAD\{UPN}. AzureADдолжен быть указан как есть, а затем следуйте указаниям Microsoft Entra имени субъекта-пользователя (UPN).

<Config>
  <Account>AzureAD\user@contoso.onmicrosoft.com</Account>
  <DefaultProfile Id="{GUID}"/>
</Config>

Учетные записи групп

Учетные записи групп задаются с помощью <UserGroup>. Вложенные группы не поддерживаются. Например, если пользователь A входит в группу A, группа A — член группы B, а группа Б используется в <Config/>, пользователь A не имеет возможности киоска.

Локальная группа

Укажите тип группы как LocalGroup и добавьте имя группы в Name атрибут .

<Config>
  <UserGroup Type="LocalGroup" Name="groupname" />
  <DefaultProfile Id="{GUID}"/>
</Config>

Группа Active Directory

Поддерживаются как группы безопасности, так и группы рассылки. Укажите тип группы как ActiveDirectoryGroup. Используйте доменное имя в качестве префикса в атрибуте name.

<Config>
  <UserGroup Type="ActiveDirectoryGroup" Name="contoso\groupname" />
  <DefaultProfile Id="{GUID}"/>
</Config>

группа Microsoft Entra

Используйте идентификатор объекта группы Microsoft Entra. Идентификатор объекта можно найти на странице обзора группы, войдя в Центр администрирования Microsoft Entra и перейдя в разделГруппы>удостоверений>Все группы. Укажите тип группы как AzureActiveDirectoryGroup. Устройство киоска должно иметь подключение к Интернету, когда пользователи, принадлежащие к группе, входят в систему.

<Config>
  <UserGroup Type="AzureActiveDirectoryGroup" Name="Group_GUID" />
  <DefaultProfile Id="{GUID}"/>
</Config>

Дальнейшие действия

Ознакомьтесь с некоторыми практическими примерами xml-конфигураций назначенного доступа:

Примеры назначенного доступа