Descripción de las directivas ADMX

Debido a la mayor simplicidad y a la facilidad con la que se pueden dirigir los dispositivos, las empresas empresariales están resultando cada vez más ventajosas trasladar su administración de equipos a una solución de administración de dispositivos basada en la nube. Desafortunadamente, las soluciones modernas de administración de dispositivos windows pc carecen de las funcionalidades críticas de configuración de directivas y aplicaciones que se admiten en una solución de administración de PC tradicional.

Se ha ampliado la compatibilidad con la configuración de directivas de mobile Administración de dispositivos (MDM) para permitir el acceso al conjunto seleccionado de plantillas administrativas de directiva de grupo (directivas ADMX) para equipos Windows a través del proveedor de servicios de configuración de directivas (CSP). Este acceso ampliado garantiza que las empresas puedan mantener sus dispositivos conformes y evitar el riesgo de poner en peligro la seguridad de sus dispositivos administrados a través de la nube.

Segundo plano

Además de las directivas MDM estándar, el CSP de directivas también puede controlar el conjunto seleccionado de directivas ADMX. En una directiva ADMX, una plantilla administrativa contiene los metadatos de un directiva de grupo de Windows y se puede editar en la directiva de grupo Editor local en un equipo. Cada plantilla administrativa especifica las claves del Registro (y sus valores) asociadas a un directiva de grupo y define la configuración de directiva que se puede administrar. Las plantillas administrativas organizan las directivas de grupo en una jerarquía en la que cada segmento de la ruta jerárquica se define como una categoría. Cada configuración de una plantilla administrativa de directiva de grupo corresponde a un valor específico del Registro. Estos directiva de grupo configuración se definen en un formato de archivo XML basado en estándares conocido como archivo ADMX. Para obtener más información, consulte directiva de grupo Guía de referencia de sintaxis ADMX.

Los archivos ADMX pueden describir las directivas de grupo del sistema operativo (SO) que se incluyen con Windows o pueden describir la configuración de las aplicaciones, que son independientes del sistema operativo y normalmente se pueden descargar e instalar en un equipo. En función de la categoría específica de la configuración que controlen (sistema operativo o aplicación), la configuración de la plantilla administrativa se encuentra en las dos ubicaciones siguientes de la directiva de grupo Editor local:

  • Configuración del sistema operativo: Configuración del equipo/Plantillas administrativas
  • Configuración de la aplicación: Configuración de usuario/Plantillas administrativas

En un ecosistema de controlador de dominio o directiva de grupo, las directivas de grupo se agregan automáticamente al registro del equipo cliente o al perfil de usuario mediante la Extensión del lado cliente de plantillas administrativas (CSE) cada vez que el equipo cliente procesa un directiva de grupo. Por el contrario, en un cliente administrado por MDM, los archivos ADMX se aplican para definir directivas independientes de las directivas de grupo. Por lo tanto, en un cliente administrado por MDM, no se requiere una infraestructura de directiva de grupo, incluido el servicio de directiva de grupo (gpsvc.exe).

Un archivo ADMX se puede enviar con Windows (ubicado en %SystemRoot%\policydefinitions) o se puede ingerir en un dispositivo a través del URI de CSP de directiva (./Vendor/MSFT/Policy/ConfigOperations/ADMXInstall). Los archivos ADMX de bandeja de entrada se procesan en directivas MDM en tiempo de compilación del sistema operativo. Los archivos ADMX que se ingieren se procesan en directivas MDM después del envío del sistema operativo a través del CSP de directivas. Dado que el CSP de directivas no se basa en ningún aspecto de la pila de cliente de directiva de grupo, incluido el servicio de directiva de grupo del equipo (GPSvc), los controladores de directivas que se ingieren en el dispositivo pueden reaccionar a las directivas establecidas por MDM.

Windows asigna el nombre y la ruta de acceso de categoría de un directiva de grupo a un área de directiva mdm y un nombre de directiva mediante el análisis del archivo ADMX asociado, la búsqueda de la directiva de grupo especificada y el almacenamiento de la definición (metadatos) en el almacén de cliente CSP de directiva MDM. Cuando la directiva MDM contiene un comando SyncML y el URI de CSP de directiva, .\[device|user]\vendor\msft\policy\[config|result]\<area>\<policy>se hace referencia a estos metadatos y determina qué claves del Registro se establecen o se quitan. Para obtener una lista de las directivas ADMX compatibles con MDM, consulte CSP de directivas: directivas ADMX.

archivos ADMX y el directiva de grupo Editor

Para capturar el control de MDM de un extremo a otro de las directivas de grupo de ADMX, un administrador de TI debe usar una interfaz de usuario, como la directiva de grupo Editor (gpedit.msc), para recopilar los datos necesarios. La interfaz de usuario de la consola de MDM ISV determina cómo recopilar los datos de directiva de grupo necesarios del administrador de TI. Las directivas de grupo de ADMX se organizan en una jerarquía y pueden tener un ámbito de máquina, usuario o ambos. En el ejemplo directiva de grupo de la sección siguiente se usa una directiva de grupo de toda la máquina denominada "Configuración del servidor de publicación 2". Cuando se selecciona esta directiva de grupo, sus estados disponibles son No configurado, Habilitado y Deshabilitado.

El archivo ADMX que usa el ISV de MDM para determinar qué interfaz de usuario mostrar al administrador de TI es el mismo archivo ADMX que el cliente usa para la definición de directiva. El archivo ADMX lo procesa el sistema operativo en tiempo de compilación o lo establece el cliente en tiempo de ejecución del sistema operativo. En cualquier caso, el cliente y el ISV MDM deben sincronizarse con las definiciones de directiva ADMX. Cada archivo ADMX corresponde a una categoría directiva de grupo y normalmente contiene varias definiciones de directiva, cada una de las cuales representa una sola directiva de grupo. Por ejemplo, la definición de directiva de la "Configuración del servidor de publicación 2" se encuentra en el archivo appv.admx, que contiene las definiciones de directiva de la categoría De virtualización de aplicaciones de Microsoft (App-V) directiva de grupo.

directiva de grupo configuración del botón de opción:

  • Si se selecciona Enabled (Habilitado ), se muestran los controles de entrada de datos necesarios para el usuario en la interfaz de usuario. Cuando el administrador de TI escribe los datos y selecciona Aplicar, se producen los siguientes eventos:

    • El servidor MDM ISV configura un comando Replace SyncML con una carga que contiene los datos especificados por el usuario.
    • La pila de cliente MDM recibe estos datos, lo que hace que el CSP de directiva actualice el registro del dispositivo según la definición de directiva ADMX.
  • Si está seleccionado Deshabilitado y selecciona Aplicar, se producen los siguientes eventos:

    • El servidor MDM ISV configura un comando Replace SyncML con una carga establecida en <disabled\>.
    • La pila de cliente MDM recibe este comando, lo que hace que el CSP de directiva elimine la configuración del Registro del dispositivo, establezca las claves del Registro, o ambas, según el cambio de estado dirigido por la definición de directiva ADMX.
  • Si no está configurado está seleccionado y selecciona Aplicar, se producen los siguientes eventos:

    • El servidor MDM ISV configura un comando Delete SyncML.
    • La pila de cliente MDM recibe este comando, lo que hace que el CSP de directiva elimine la configuración del Registro del dispositivo según la definición de directiva ADMX.

En el diagrama siguiente se muestra la pantalla principal de la directiva de grupo Editor.

directiva de grupo editor.

En el diagrama siguiente se muestra la configuración de la directiva de grupo "Configuración del servidor de publicación 2" en el directiva de grupo Editor.

directiva de grupo configuración del servidor de publicador 2.

La mayoría de las directivas de grupo son un tipo booleano simple. Para un directiva de grupo booleano, si selecciona Habilitado, el panel de opciones no contiene campos de entrada de datos y la carga de SyncML es simplemente <enabled/>. Sin embargo, si hay campos de entrada de datos en el panel de opciones, el servidor MDM debe proporcionar estos datos. En el siguiente ejemplo Habilitación de un directiva de grupo se muestra esta complejidad. En este ejemplo, las etiquetas de la carga describen <data /> 10 pares nombre-valor, que corresponden a los 10 campos de entrada de datos del panel de opciones de directiva de grupo Editor para la directiva de grupo "Configuración del servidor de publicación 2". El servidor MDM consume el archivo ADMX, que define las directivas de grupo, de forma similar a cómo lo consume el directiva de grupo Editor. El directiva de grupo Editor muestra una interfaz de usuario para recibir los datos completos de la instancia de directiva de grupo, lo que también debe hacer la consola de administrador de TI del servidor MDM. Para cada <text> elemento y atributo id. de la definición de directiva ADMX, debe haber un elemento y un atributo id correspondientes <data /> en la carga. El archivo ADMX controla la definición de directiva y el servidor MDM lo requiere a través del protocolo SyncML.

Importante

Cualquier campo de entrada de datos que se muestre en la página directiva de grupo del directiva de grupo Editor debe proporcionarse en el XML codificado de la carga de SyncML. La carga de datos SyncML es equivalente a los datos de directiva de grupo proporcionados por el usuario a través de GPEdit.msc.

Para obtener más información sobre el formato de descripción directiva de grupo, vea Formato de archivo de plantilla administrativa (ADMX). Los elementos pueden ser Text, MultiText, Boolean, Enum, Decimal o List (para obtener más información, vea elementos de directiva).

Por ejemplo, si busca la cadena "Publishing_Server2_Name_Prompt" en el ejemplo Habilitación de una directiva y su definición de directiva ADMX correspondiente en el archivo appv.admx, encontrará las siguientes repeticiones:

Habilitación de un ejemplo de directiva:

`<data id="Publishing_Server2_Name_Prompt" value="name"/>`

Archivo Appv.admx:

      <elements>
        <text id="Publishing_Server2_Name_Prompt" valueName="Name" required="true"/>

Ejemplos de directivas de ADMX

En los ejemplos de SyncML siguientes se describe cómo establecer una directiva MDM definida por una plantilla ADMX, específicamente la descripción Publishing_Server2_Policy directiva de grupo en el archivo ADMX de virtualización de aplicaciones, appv.admx. La funcionalidad que administra esta directiva de grupo no es importante; se usa para ilustrar solo cómo un ISV MDM puede establecer una directiva ADMX. En estos ejemplos de SyncML se muestran las opciones comunes y el código SyncML correspondiente que se puede usar para probar las directivas. La carga de SyncML debe estar codificada en XML; para esta codificación XML, puede usar la herramienta en línea favorita. Para evitar la codificación de la carga, puede usar CData si su MDM lo admite. Para obtener más información, vea Secciones de CDATA.

Habilitación de una directiva

Carga útil:

<enabled/>
<data id="Publishing_Server2_Name_Prompt" value="Name"/>
<data id="Publishing_Server_URL_Prompt" value="http://someuri"/>
<data id="Global_Publishing_Refresh_Options" value="1"/>
<data id="Global_Refresh_OnLogon_Options" value="0"/>
<data id="Global_Refresh_Interval_Prompt" value="15"/>
<data id="Global_Refresh_Unit_Options" value="0"/>
<data id="User_Publishing_Refresh_Options" value="0"/>
<data id="User_Refresh_OnLogon_Options" value="0"/>
<data id="User_Refresh_Interval_Prompt" value="15"/>
<data id="User_Refresh_Unit_Options" value="1"/>

Solicitud SyncML:

<?xml version="1.0" encoding="utf-8"?>
<SyncML xmlns="SYNCML:SYNCML1.2">
  <SyncBody>
    <Replace>
      <CmdID>2</CmdID>
      <Item>
        <Meta>
          <Format>chr</Format>
          <Type>text/plain</Type>
        </Meta>
        <Target>
          <LocURI>./Device/Vendor/MSFT/Policy/Config/AppVirtualization/PublishingAllowServer2</LocURI>
        </Target>
        <Data>
        <![CDATA[<enabled/><data id="Publishing_Server2_Name_Prompt" value="name prompt"/><data
          id="Publishing_Server_URL_Prompt" value="URL prompt"/><data
          id="Global_Publishing_Refresh_Options" value="1"/><data
          id="Global_Refresh_OnLogon_Options" value="0"/><data
          id="Global_Refresh_Interval_Prompt" value="15"/><data
          id="Global_Refresh_Unit_Options" value="0"/><data
          id="User_Publishing_Refresh_Options" value="0"/><data
          id="User_Refresh_OnLogon_Options" value="0"/><data
          id="User_Refresh_Interval_Prompt" value="15"/><data
          id="User_Refresh_Unit_Options" value="1"/>]]>
        </Data>
      </Item>
    </Replace>
    <Final/>
  </SyncBody>
</SyncML>

SyncML de respuesta:

<Status>
  <CmdID>2</CmdID>
  <MsgRef>1</MsgRef>
  <CmdRef>2</CmdRef>
  <Cmd>Replace</Cmd>
  <Data>200</Data>
</Status>

Deshabilitación de una directiva

Carga útil:

<disabled/>

Solicitud SyncML:

<?xml version="1.0" encoding="utf-8"?>
<SyncML xmlns="SYNCML:SYNCML1.2">
  <SyncBody>
    <Replace>
      <CmdID>2</CmdID>
      <Item>
        <Meta>
          <Format>chr</Format>
          <Type>text/plain</Type>
        </Meta>
        <Target>
          <LocURI>./Device/Vendor/MSFT/Policy/Config/AppVirtualization/PublishingAllowServer2</LocURI>
        </Target>
        <Data><![CDATA[<disabled/>]]></Data>
      </Item>
    </Replace>
    <Final/>
  </SyncBody>
</SyncML>

SyncML de respuesta:

<Status>
  <CmdID>2</CmdID>
  <MsgRef>1</MsgRef>
  <CmdRef>2</CmdRef>
  <Cmd>Replace</Cmd>
  <Data>200</Data>
</Status>

Establecer una directiva en no configurada

Carga útil:

(Ninguno)

Solicitud SyncML:

<?xml version="1.0" encoding="utf-8"?>
<SyncML xmlns="SYNCML:SYNCML1.2">
  <SyncBody>
    <Delete>
      <CmdID>1</CmdID>
      <Item>
        <Target>
          <LocURI>./Device/Vendor/MSFT/Policy/Config/AppVirtualization/PublishingAllowServer2</LocURI>
        </Target>
      </Item>
    </Delete>
    <Final/>
  </SyncBody>
</SyncML>

SyncML de respuesta:

<Status>
  <CmdID>2</CmdID>
  <MsgRef>1</MsgRef>
  <CmdRef>1</CmdRef>
  <Cmd>Delete</Cmd>
  <Data>200</Data>
</Status>

SyncML de ejemplo para varios elementos ADMX

En esta sección se describe syncML de ejemplo para los distintos elementos ADMX, como Text, Multi-Text, Decimal, Boolean y List.

Cómo se asignan una ruta de acceso y un nombre de categoría de directiva de directiva de grupo a un área mdm y un nombre de directiva

Esta es la asignación interna del sistema operativo de un directiva de grupo a un área y un nombre mdm. Esta asignación forma parte de un conjunto de manifiestos de Windows que, cuando se compila analiza el archivo ADMX asociado, busca la directiva de directiva de grupo especificada y almacena esa definición (metadatos) en el almacén de cliente csp de directiva MDM. Las directivas respaldadas por ADMX se organizan jerárquicamente. Su ámbito puede ser máquina, usuario o tener un ámbito de ambos. Cuando se hace referencia a la directiva MDM a través de un comando SyncML y el URI de CSP de directiva, como se muestra, se hace referencia a estos metadatos y determina qué claves del Registro se establecen o quitan. Se hace referencia a las directivas de ámbito de equipo a través de .\Device y las directivas de ámbito de usuario a través de .\User.

./[Device|User]/Vendor/MSFT/Policy/Config/[config|result]/<area>/<policy>

La carga de datos de SyncML debe codificarse para que no entre en conflicto con las etiquetas XML syncML reutilizables. Use esta herramienta en línea para codificar y descodificar el cuadro de herramientas del coder de datos de directiva.

Fragmento de manifiesto del área AppVirtualization:

<identity xmlns="urn:Microsoft.CompPlat/ManifestSchema.v1.00"  xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" owner="Microsoft" namespace="Windows-DeviceManagement-PolicyDefinition" name="AppVirtualization">
  <policyDefinitions>
    <area name="AppVirtualization">
      <policies>
         ...
         <stringPolicy name="PublishingAllowServer2" notSupportedOnPlatform="phone" admxbacked="appv.admx" scope="machine">
            <ADMXPolicy area="appv~AT~System~CAT_AppV~CAT_Publishing" name="Publishing_Server2_Policy" scope="machine" />
           <registryKeyRedirect path="SOFTWARE\Policies\Microsoft\AppV\Client\Publishing\Servers\2" />
         </stringPolicy >
         ...

La directiva locURI para la directiva de GP anterior es:

./Device/Vendor/MSFT/Policy/Config/AppVirtualization/PublishingAllowServer2

Para construir SyncML para su área o directiva mediante los ejemplos siguientes, debe actualizar el identificador de datos y el valor de la <Data> sección de SyncML. Los elementos con el prefijo "&" son los caracteres de escape necesarios y se pueden conservar como se muestra.

Elemento Text

El text elemento simplemente corresponde a una cadena y correspondiente a un cuadro de edición de un panel de directivas que muestra gpedit.msc. La cadena se almacena en el Registro de tipo REG_SZ.

Archivo ADMX: inetres.admx:

<policy name="RestrictHomePage" class="User" displayName="$(string.RestrictHomePage)" explainText="$(string.IE_ExplainRestrictHomePage)" presentation="$(presentation.RestrictHomePage)" key="Software\Policies\Microsoft\Internet Explorer\Control Panel" valueName="HomePage">
  <parentCategory ref="InternetExplorer" />
  <supportedOn ref="SUPPORTED_IE5" />
  <elements>
    <text id="EnterHomePagePrompt" key="Software\Policies\Microsoft\Internet Explorer\Main" valueName="Start Page" required="true" />
  </elements>
</policy>

SyncML correspondiente:

<?xml version="1.0" encoding="utf-8"?>
<SyncML xmlns="SYNCML:SYNCML1.2">
  <SyncBody>
    <Replace>
      <CmdID>$CmdId$</CmdID>
      <Item>
        <Meta>
          <Format>chr</Format>
          <Type>text/plain</Type>
        </Meta>
        <Target>
          <LocURI>./User/Vendor/MSFT/Policy/Config/InternetExplorer/DisableHomePageChange</LocURI>
        </Target>
        <Data><![CDATA[<enabled/><data id="EnterHomePagePrompt" value="mystartpage"/>]]></Data>
      </Item>
    </Replace>
    <Final/>
  </SyncBody>
</SyncML>

Elemento MultiText

El multiText elemento simplemente corresponde a una cadena del Registro de REG_MULTISZ y correspondiente a una cuadrícula para escribir varias cadenas en un panel de directivas que muestra gpedit.msc. Se espera que cada cadena de SyncML esté separada por el carácter Unicode 0xF000 (versión codificada: &#xF000;)

<policy name="Virtualization_JITVAllowList" class="Machine" displayName="$(string.Virtualization_JITVAllowList)"
        explainText="$(string.Virtualization_JITVAllowList_Help)" presentation="$(presentation.Virtualization_JITVAllowList)"
          key="SOFTWARE\Policies\Microsoft\AppV\Client\Virtualization"
          valueName="ProcessesUsingVirtualComponents">
    <parentCategory ref="CAT_Virtualization" />
    <supportedOn ref="windows:SUPPORTED_Windows7" />
    <elements>
    <multiText id="Virtualization_JITVAllowList_Prompt" valueName="ProcessesUsingVirtualComponents" />
    </elements>
</policy>

SyncML correspondiente:

<?xml version="1.0" encoding="utf-8"?>
<SyncML xmlns="SYNCML:SYNCML1.2">
  <SyncBody>
    <Replace>
      <CmdID>2</CmdID>
      <Item>
        <Meta>
          <Format>chr</Format>
          <Type>text/plain</Type>
        </Meta>
        <Target>
          <LocURI>./Device/Vendor/MSFT/Policy/Config/AppVirtualization/VirtualComponentsAllowList</LocURI>
        </Target>
        <Data><![CDATA[<enabled/><data id="Virtualization_JITVAllowList_Prompt" value="C:\QuickPatch\TEST\snot.exe&#xF000;C:\QuickPatch\TEST\foo.exe&#xF000;C:\QuickPatch\TEST\bar.exe"/>]]></Data>
      </Item>
    </Replace>
    <Final/>
  </SyncBody>
</SyncML>

Elemento List (y sus variaciones)

El list elemento simplemente corresponde a un subárbol de REG_SZ cadenas del Registro y correspondiente a una cuadrícula para escribir varias cadenas en un panel de directivas que muestra gpedit.msc. Cómo se representa este elemento en SyncML es como una cadena que contiene pares de cadenas. Cada par es una clave de nombre/valor de REG_SZ. Es mejor aplicar la directiva a través de gpedit.msc (ejecutar como administrador) y ir a la ubicación del subárbol del Registro y ver cómo se almacenan los valores de lista. Esta ubicación le proporciona una idea de la forma en que se almacenan los pares nombre-valor para expresarlo a través de SyncML.

Nota

Se espera que cada cadena de SyncML esté separada por el carácter Unicode 0xF000 (versión codificada: &#xF000;).

Las variaciones del list elemento las dictan los atributos. El runtime del Administrador de directivas omite estos atributos. Se espera que el servidor MDM administre los pares nombre-valor. Estos son algunos ejemplos de la lista de directiva de grupo.

Archivo ADMX: inetres.admx:

<policy name="SecondaryHomePages" class="Both" displayName="$(string.SecondaryHomePages)" explainText="$(string.IE_ExplainSecondaryHomePages)" presentation="$(presentation.SecondaryHomePages)" key="Software\Policies\Microsoft\Internet Explorer\Main\SecondaryStartPages">
  <parentCategory ref="InternetExplorer" />
  <supportedOn ref="SUPPORTED_IE8" />
  <elements>
    <list id="SecondaryHomePagesList" additive="true" />
  </elements>
</policy>

SyncML correspondiente:

<SyncML xmlns="SYNCML:SYNCML1.2">
  <SyncBody>
    <Replace>
      <CmdID>2</CmdID>
      <Item>
        <Meta>
          <Format>chr</Format>
          <Type>text/plain</Type>
        </Meta>
        <Target>
          <LocURI>./User/Vendor/MSFT/Policy/Config/InternetExplorer/DisableSecondaryHomePageChange</LocURI>
        </Target>
        <Data><![CDATA[<Enabled/><Data id="SecondaryHomePagesList" value="http://name1&#xF000;http://name1&#xF000;http://name2&#xF000;http://name2"/>]]></Data>
      </Item>
    </Replace>
    <Final/>
  </SyncBody>
</SyncML>

Sin elementos

<policy name="NoUpdateCheck" class="Machine" displayName="$(string.NoUpdateCheck)" explainText="$(string.IE_ExplainNoUpdateCheck)" key="Software\Policies\Microsoft\Internet Explorer\Infodelivery\Restrictions" valueName="NoUpdateCheck">
  <parentCategory ref="InternetExplorer" />
  <supportedOn ref="SUPPORTED_IE5_6" />
</policy>

SyncML correspondiente:

<SyncML xmlns="SYNCML:SYNCML1.2">
  <SyncBody>
    <Replace>
      <CmdID>2</CmdID>
      <Item>
        <Meta>
          <Format>chr</Format>
          <Type>text/plain</Type>
        </Meta>
        <Target>
          <LocURI>./Device/Vendor/MSFT/Policy/Config/InternetExplorer/DisableUpdateCheck</LocURI>
        </Target>
        <Data><![CDATA[<Enabled/>]]></Data>
      </Item>
    </Replace>
    <Final/>
  </SyncBody>
</SyncML>

Enum

<policy name="EncryptionMethodWithXts_Name" class="Machine" displayName="$(string.EncryptionMethodWithXts_Name)" explainText="$(string.EncryptionMethodWithXts_Help)" presentation="$(presentation.EncryptionMethodWithXts_Name)" key="SOFTWARE\Policies\Microsoft\FVE">
    <parentCategory ref="FVECategory" />
    <!--Bug OS:4242178 -->
    <supportedOn ref="windows:SUPPORTED_Windows_10_0" />
    <elements>
        <enum id="EncryptionMethodWithXtsOsDropDown_Name" valueName="EncryptionMethodWithXtsOs" required="true">
            <item displayName="$(string.EncryptionMethodDropDown_AES128_Name2)">
                <value>
                    <decimal value="3" />
                </value>
            </item>
            <item displayName="$(string.EncryptionMethodDropDown_AES256_Name2)">
                <value>
                    <decimal value="4" />
                </value>
            </item>
            <item displayName="$(string.EncryptionMethodDropDown_XTS_AES128_Name)">
                <value>
                    <decimal value="6" />
                </value>
            </item>
            <item displayName="$(string.EncryptionMethodDropDown_XTS_AES256_Name)">
                <value>
                    <decimal value="7" />
                </value>
            </item>
        </enum>
   </elements>
</policy>

SyncML correspondiente:

<SyncML xmlns="SYNCML:SYNCML1.2">
  <SyncBody>
    <Replace>
      <CmdID>2</CmdID>
      <Item>
        <Target>
          <LocURI>./Device/Vendor/MSFT/Policy/Config/BitLocker/EncryptionMethodByDriveType</LocURI>
        </Target>
        <Data>
          <![CDATA[<enabled/>
          <data id="EncryptionMethodWithXtsOsDropDown_Name" value="4"/>]]>
        </Data>
      </Item>
    </Replace>
    <Final/>
  </SyncBody>
</SyncML>

Elemento Decimal

<policy name="Streaming_Reestablishment_Interval" class="Machine" displayName="$(string.Streaming_Reestablishment_Interval)"
            explainText="$(string.Streaming_Reestablishment_Interval_Help)"
            presentation="$(presentation.Streaming_Reestablishment_Interval)"
            key="SOFTWARE\Policies\Microsoft\AppV\Client\Streaming">
    <parentCategory ref="CAT_Streaming" />
    <supportedOn ref="windows:SUPPORTED_Windows7" />
    <elements>
        <decimal id="Streaming_Reestablishment_Interval_Prompt" valueName="ReestablishmentInterval" minValue="0" maxValue="3600"/>
    </elements>
</policy>

SyncML correspondiente:

<SyncML xmlns="SYNCML:SYNCML1.2">
  <SyncBody>
    <Replace>
      <CmdID>2</CmdID>
      <Item>
        <Target>
          <LocURI>./Device/Vendor/MSFT/Policy/Config/AppVirtualization/StreamingAllowReestablishmentInterval</LocURI>
        </Target>
        <Data>
          <![CDATA[<enabled/>
          <data id="Streaming_Reestablishment_Interval_Prompt" value="4"/>]]>
        </Data>
      </Item>
    </Replace>
    <Final/>
  </SyncBody>
</SyncML>

Elemento booleano

<policy name="DeviceInstall_Classes_Deny" class="Machine" displayName="$(string.DeviceInstall_Classes_Deny)" explainText="$(string.DeviceInstall_Classes_Deny_Help)" presentation="$(presentation.DeviceInstall_Classes_Deny)" key="Software\Policies\Microsoft\Windows\DeviceInstall\Restrictions" valueName="DenyDeviceClasses">
    <parentCategory ref="DeviceInstall_Restrictions_Category" />
    <supportedOn ref="windows:SUPPORTED_WindowsVista" />
    <enabledValue>
    <decimal value="1" />
    </enabledValue>
    <disabledValue>
    <decimal value="0" />
    </disabledValue>
    <elements>
        <list id="DeviceInstall_Classes_Deny_List" key="Software\Policies\Microsoft\Windows\DeviceInstall\Restrictions\DenyDeviceClasses" valuePrefix="" />
        <boolean id="DeviceInstall_Classes_Deny_Retroactive" valueName="DenyDeviceClassesRetroactive" >
            <trueValue>
                <decimal value="1" />
            </trueValue>
            <falseValue>
                <decimal value="0" />
            </falseValue>
        </boolean>
    </elements>
</policy>

SyncML correspondiente:

<?xml version="1.0" encoding="utf-8"?>
<SyncML xmlns="SYNCML:SYNCML1.2">
  <SyncBody>
    <Replace>
      <CmdID>2</CmdID>
      <Item>
        <Meta>
          <Format>chr</Format>
          <Type>text/plain</Type>
        </Meta>
        <Target>
          <LocURI>./Device/Vendor/MSFT/Policy/Config/DeviceInstallation/PreventInstallationOfMatchingDeviceSetupClasses</LocURI>
        </Target>
        <Data>
          <![CDATA[<enabled/><data id="DeviceInstall_Classes_Deny_Retroactive" value="true"/>
          <Data id="DeviceInstall_Classes_Deny_List" value="1&#xF000;deviceId1&#xF000;2&#xF000;deviceId2"/>]]>
        </Data>
      </Item>
    </Replace>
    <Final/>
  </SyncBody>
</SyncML>