ADMXIngestion (справка по конструктору конфигураций Windows)

Начиная с Windows 10 версии 1703, можно импортировать (принимать) групповая политика административные шаблоны (файлы ADMX) и настраивать значения для политик на основе ADMX в пакете подготовки. Сведения о применяемых типах политик с поддержкой ADMX см. в разделе Обзор конфигурации политики Win32 и приложения мост для классических приложений.

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

  • Параметры в разделе ConfigOperations указывают ADMX-файл для импорта.

Важно.

С помощью пакета подготовки можно задать только политики область устройства (class="Machine" или class="Both").

Область применения

Группы параметров Клиент Windows Surface Hub HoloLens IoT Enterprise
ConfigADMXInstalledPolicy
ConfigOperations

ConfigOperations

Используйте ConfigOperations для импорта политик ADMX из ADMX-файла.

  1. Введите имя приложения, а затем нажмите кнопку Добавить. Назначено может быть любое имя, поэтому выбирайте что-то описательное, что поможет определить назначение. Например, если вы импортируете ADMX для Chromium Edge, введите имя приложения. Примере MSEdgeEfficiencyMode

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

  3. Выберите тип параметра в панели настроек. В поле AdmxFileUid введите имя ADMX-файла или уникальный код для файла, а затем нажмите кнопку Добавить. В поле AdmxFileUid может быть любая строка, но она должна быть уникальной в пакете подготовки. Использование имени ADMX-файла поможет вам идентифицировать файл в будущем. Примере MSEdgeEfficiencyMode

    Примечание.

    Сохранение одинаковых AdmxFileUid и AppName поможет предотвратить ошибки авторизации.

  4. Выберите AdmxFileUid в панели настроек и вставьте содержимое файла ADMX-файла в текстовое поле. Прежде чем скопировать содержимое ADMX-файла, необходимо преобразовать его в одну строку. Инструкции см. в разделе преобразовать несколько строк в одну строку.

    Примечание.

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

    Пример: EfficiencyMode

    <policy class="Both" displayName="$(string.EfficiencyMode)" explainText="$(string.EfficiencyMode_Explain)" key="Software\Policies\Microsoft\Edge" name="EfficiencyMode" presentation="$(presentation.EfficiencyMode)">      <parentCategory ref="Performance"/>      <supportedOn ref="SUPPORTED_WIN7_V96"/>      <elements>        <enum id="EfficiencyMode" valueName="EfficiencyMode">          <item displayName="$(string.EfficiencyMode_AlwaysActive)">            <value>              <decimal value="0"/>            </value>          </item>          <item displayName="$(string.EfficiencyMode_NeverActive)">            <value>              <decimal value="1"/>            </value>          </item>          <item displayName="$(string.EfficiencyMode_ActiveWhenUnplugged)">            <value>              <decimal value="2"/>            </value>          </item>          <item displayName="$(string.EfficiencyMode_ActiveWhenUnpluggedBatteryLow)">            <value>              <decimal value="3"/>            </value>          </item>        </enum>      </elements>    </policy>
    
  5. Повторите для каждого ADMX-файла или набора политик ADMX, которые вы хотите добавить, а затем настройте ConfigADMXInstalledPolicy для каждого из них.

ConfigADMXInstalledPolicy

Важно.

Настройте параметры, чтобы сначала импортировать файл ADMX в ConfigOperations.

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

  1. Введите имя области, а затем нажмите кнопку Добавить. Структура имени области выглядит следующим образом:<AppName (from ConfigOperations)>~<SettingType>~<category name from ADMX> Дополнительные сведения см. в разделе Категория и политика в ADMX . Параметр может иметь несколько уровней имен категорий, как показано в следующем примере. Примере: MSEdgeEfficiencyMode~Policy~microsoft_edge~Performance
  2. Выберите имя области в панели настройки, введите имя политики из ADMX-файла и нажмите кнопку Добавить. Пример: EfficiencyMode.
  3. Выберите имя политики в панели настройки, затем введите значение из ADMX-файла в текстовое поле. Пример: <enabled/><data id="EfficiencyMode" Value="2">.

Категория и политика в ADMX-файле

В следующих примерах показан ADMX-файл для Chromium Edge, используемый в примерах в процедурах выше. В первом примере выделены имена категорий.

  <categories>
    <category displayName="$(string.microsoft_edge)" name="microsoft_edge"/>
    <category displayName="$(string.Performance_group)" name="Performance">
      <parentCategory ref="microsoft_edge"/>
    </category>
  </categories>

В следующем примере выделена конкретная политика.

    <policy class="Both" displayName="$(string.EfficiencyMode)" explainText="$(string.EfficiencyMode_Explain)" key="Software\Policies\Microsoft\Edge" name="EfficiencyMode" presentation="$(presentation.EfficiencyMode)">
      <parentCategory ref="Performance"/>
      <supportedOn ref="SUPPORTED_WIN7_V96"/>
      <elements>
        <enum id="EfficiencyMode" valueName="EfficiencyMode">
          <item displayName="$(string.EfficiencyMode_AlwaysActive)">
            <value>
              <decimal value="0"/>
            </value>
          </item>
          <item displayName="$(string.EfficiencyMode_NeverActive)">
            <value>
              <decimal value="1"/>
            </value>
          </item>
          <item displayName="$(string.EfficiencyMode_ActiveWhenUnplugged)">
            <value>
              <decimal value="2"/>
            </value>
          </item>
          <item displayName="$(string.EfficiencyMode_ActiveWhenUnpluggedBatteryLow)">
            <value>
              <decimal value="3"/>
            </value>
          </item>
        </enum>
      </elements>
    </policy>

Преобразовать несколько строк в одну строку

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

$outputFile = "output.admx"
$inputFile = "input.admx"
(Get-Content $inputFile -Raw).Replace("`r`n","") | Set-Content $outputFile -Force

Примеры конфигурации

Пример: режим эффективности edge

<?xml version="1.0" encoding="utf-8"?>
<WindowsCustomizations>
  <PackageConfig xmlns="urn:schemas-Microsoft-com:Windows-ICD-Package-Config.v1.0">
    <ID>{d1ab1e3e-6e6d-4bd5-b35b-34cca18d2e16}</ID>
    <Name>MSEdgeEfficiencyMode</Name>
    <Version>1.1</Version>
    <OwnerType>OEM</OwnerType>
    <Rank>0</Rank>
    <Notes></Notes>
  </PackageConfig>
  <Settings xmlns="urn:schemas-microsoft-com:windows-provisioning">
    <Customizations>
      <Common>
        <ADMXIngestion>
          <ConfigADMXInstalledPolicy>
            <AreaName>
              <PolicyName AreaName="MSEdgeEfficiencyMode~Policy~microsoft_edge~Performance" Name="MSEdgeEfficiencyMode~Policy~microsoft_edge~Performance">
                <SetAdmxPolicy PolicyName="EfficiencyMode" Name="EfficiencyMode">&lt;enabled/&gt;&lt;data id="EfficiencyMode" value="2"/&gt;</SetAdmxPolicy>
              </PolicyName>
            </AreaName>
          </ConfigADMXInstalledPolicy>
          <ConfigOperations>
            <ADMXInstall>
              <AppName>
                <SettingType AppName="MSEdgeEfficiencyMode" Name="MSEdgeEfficiencyMode">
                  <ADMXFileUniqueID SettingType="Policy" Name="Policy">
                    <InsertADMXFile AdmxFileUid="MSEdgeEfficiencyMode" Name="MSEdgeEfficiencyMode">&lt;?xml version="1.0" ?&gt;&lt;policyDefinitions revision="1.0" schemaVersion="1.0" xmlns="http://www.microsoft.com/GroupPolicy/PolicyDefinitions"&gt;  &lt;!--microsoft_edge version: 96.0.1054.62--&gt;  &lt;policyNamespaces&gt;    &lt;target namespace="Microsoft.Policies.Edge" prefix="microsoft_edge"/&gt;    &lt;using namespace="Microsoft.Policies.Windows" prefix="windows"/&gt;  &lt;/policyNamespaces&gt;  &lt;resources minRequiredRevision="1.0"/&gt;  &lt;supportedOn&gt;    &lt;definitions&gt;      &lt;definition displayName="$(string.SUPPORTED_WIN7_V96)" name="SUPPORTED_WIN7_V96"/&gt;    &lt;/definitions&gt;  &lt;/supportedOn&gt;  &lt;categories&gt;    &lt;category displayName="$(string.microsoft_edge)" name="microsoft_edge"/&gt;    &lt;category displayName="$(string.Performance_group)" name="Performance"&gt;      &lt;parentCategory ref="microsoft_edge"/&gt;    &lt;/category&gt;  &lt;/categories&gt;  &lt;policies&gt;    &lt;policy class="Both" displayName="$(string.EfficiencyMode)" explainText="$(string.EfficiencyMode_Explain)" key="Software\Policies\Microsoft\Edge" name="EfficiencyMode" presentation="$(presentation.EfficiencyMode)"&gt;      &lt;parentCategory ref="Performance"/&gt;      &lt;supportedOn ref="SUPPORTED_WIN7_V96"/&gt;      &lt;elements&gt;        &lt;enum id="EfficiencyMode" valueName="EfficiencyMode"&gt;          &lt;item displayName="$(string.EfficiencyMode_AlwaysActive)"&gt;            &lt;value&gt;              &lt;decimal value="0"/&gt;            &lt;/value&gt;          &lt;/item&gt;          &lt;item displayName="$(string.EfficiencyMode_NeverActive)"&gt;            &lt;value&gt;              &lt;decimal value="1"/&gt;            &lt;/value&gt;          &lt;/item&gt;          &lt;item displayName="$(string.EfficiencyMode_ActiveWhenUnplugged)"&gt;            &lt;value&gt;              &lt;decimal value="2"/&gt;            &lt;/value&gt;          &lt;/item&gt;          &lt;item displayName="$(string.EfficiencyMode_ActiveWhenUnpluggedBatteryLow)"&gt;            &lt;value&gt;              &lt;decimal value="3"/&gt;            &lt;/value&gt;          &lt;/item&gt;        &lt;/enum&gt;      &lt;/elements&gt;    &lt;/policy&gt;  &lt;/policies&gt;&lt;/policyDefinitions&gt;</InsertADMXFile>
                  </ADMXFileUniqueID>
                </SettingType>
              </AppName>
            </ADMXInstall>
          </ConfigOperations>
        </ADMXIngestion>
      </Common>
    </Customizations>
  </Settings>
</WindowsCustomizations>