Noções básicas sobre políticas ADMX

Devido à maior simplicidade e à facilidade com que os dispositivos podem ser direcionados, as empresas empresariais estão achando cada vez mais vantajoso mover seu gerenciamento de computadores para uma solução de gerenciamento de dispositivos baseada em nuvem. Infelizmente, as soluções modernas de gerenciamento de dispositivos do Windows PC não têm os recursos críticos de configuração de política e configurações de aplicativo com suporte em uma solução tradicional de gerenciamento de computadores.

O suporte à configuração de política de MDM (Gerenciamento de Dispositivos móvel) foi expandido para permitir o acesso de um conjunto selecionado de modelos administrativos Política de Grupo (políticas do ADMX) para computadores Windows por meio do CSP (provedor de serviços de configuração de política). Esse acesso expandido garante que as empresas possam manter seus dispositivos em conformidade e impedir o risco de comprometer a segurança de seus dispositivos gerenciados pela nuvem.

Tela de fundo

Além das políticas de MDM padrão, o CSP de política também pode lidar com o conjunto selecionado de políticas do ADMX. Em uma política do ADMX, um modelo administrativo contém os metadados de uma Política de Grupo do Windows e pode ser editado no local Política de Grupo Editor em um computador. Cada modelo administrativo especifica as chaves do registro (e seus valores) associadas a um Política de Grupo e define as configurações de política que podem ser gerenciadas. Modelos administrativos organizam Políticas de Grupo em uma hierarquia na qual cada segmento no caminho hierárquico é definido como uma categoria. Cada configuração em um modelo administrativo Política de Grupo corresponde a um valor de registro específico. Essas configurações de Política de Grupo são definidas em um formato de arquivo XML baseado em padrões conhecido como um arquivo ADMX. Para obter mais informações, consulte Política de Grupo Guia de Referência de Sintaxe do ADMX.

Os arquivos ADMX podem descrever políticas de grupo do sistema operacional (sistema operacional) que são enviadas com o Windows ou podem descrever configurações de aplicativos, que são separados do sistema operacional e geralmente podem ser baixados e instalados em um computador. Dependendo da categoria específica das configurações que elas controlam (sistema operacional ou aplicativo), as configurações de modelo administrativo são encontradas nos dois locais a seguir no Local Política de Grupo Editor:

  • Configurações do sistema operacional: Configuração do computador/modelos administrativos
  • Configurações do aplicativo: Configuração do usuário/modelos administrativos

Em um ecossistema de controlador/Política de Grupo de domínio, as Políticas de Grupo são adicionadas automaticamente ao registro do computador cliente ou perfil de usuário pelo CSE (Extensão lateral do cliente) de modelos administrativos sempre que o computador cliente processa um Política de Grupo. Por outro lado, em um cliente gerenciado por MDM, os arquivos ADMX são aplicados para definir políticas independentes de Políticas de Grupo. Portanto, em um cliente gerenciado por MDM, não é necessária uma infraestrutura de Política de Grupo, incluindo o serviço de Política de Grupo (gpsvc.exe).

Um arquivo ADMX pode ser enviado com o Windows (localizado em %SystemRoot%\policydefinitions) ou pode ser ingerido para um dispositivo por meio do URI CSP da política (./Vendor/MSFT/Policy/ConfigOperations/ADMXInstall). Os arquivos do ADMX da caixa de entrada são processados em políticas de MDM no tempo de compilação do sistema operacional. Os arquivos ADMX ingeridos são processados em políticas de MDM após o envio do sistema operacional por meio do CSP da política. Como o CSP de política não depende de nenhum aspecto da pilha de clientes Política de Grupo, incluindo o GPSvc (serviço de Política de Grupo do computador), os manipuladores de política ingeridos no dispositivo são capazes de reagir às políticas definidas pelo MDM.

O Windows mapeia o nome e o caminho de categoria de um Política de Grupo para uma área de política do MDM e o nome da política analisando o arquivo ADMX associado, encontrando o Política de Grupo especificado e armazenando a definição (metadados) no repositório de clientes CSP da Política de MDM. Quando a política MDM contém um comando SyncML e o URI CSP da política, .\[device|user]\vendor\msft\policy\[config|result]\<area>\<policy>esses metadados são referenciados e determinam quais chaves de registro são definidas ou removidas. Para obter uma lista de políticas do ADMX com suporte do MDM, consulte Política CSP – Políticas do ADMX.

Arquivos ADMX e o Política de Grupo Editor

Para capturar o tratamento de MDM de ponta a ponta das políticas de grupo do ADMX, um administrador de TI deve usar uma interface do usuário, como o Política de Grupo Editor (gpedit.msc), para coletar os dados necessários. A interface do usuário do console isv do MDM determina como coletar os dados de Política de Grupo necessários do administrador de TI. As Políticas de Grupo do ADMX são organizadas em uma hierarquia e podem ter um escopo de máquina, usuário ou ambos. O exemplo Política de Grupo na próxima seção usa um Política de Grupo em todo o computador chamado "Configurações do Servidor de Publicação 2". Quando esse Política de Grupo é selecionado, seus estados disponíveis não estão configurados, habilitados e desabilitados.

O arquivo ADMX que o ISV do MDM usa para determinar qual interface do usuário exibir ao administrador de TI é o mesmo arquivo ADMX que o cliente usa para a definição de política. O arquivo ADMX é processado pelo sistema operacional no momento do build ou definido pelo cliente no runtime do sistema operacional. Em ambos os casos, o cliente e o ISV do MDM devem ser sincronizados com as definições de política do ADMX. Cada arquivo ADMX corresponde a uma categoria de Política de Grupo e normalmente contém várias definições de política, cada uma das quais representa um único Política de Grupo. Por exemplo, a definição de política para "Configurações do Servidor de Publicação 2" está contida no arquivo appv.admx, que contém as definições de política para a categoria Política de Grupo de Virtualização de Aplicativo da Microsoft (App-V).

Política de Grupo configuração do botão de opção:

  • Se Habilitado estiver selecionado, os controles de entrada de dados necessários serão exibidos para o usuário na interface do usuário. Quando o administrador de TI insere os dados e seleciona Aplicar, os seguintes eventos ocorrem:

    • O servidor ISV do MDM configura um comando Substituir SyncML por uma carga que contém os dados inseridos pelo usuário.
    • A pilha de clientes MDM recebe esses dados, o que faz com que o CSP de política atualize o registro do dispositivo de acordo com a definição de política do ADMX.
  • Se Disabled estiver selecionado e você selecionar Aplicar, os seguintes eventos ocorrerão:

    • O servidor ISV do MDM configura um comando Substituir SyncML por uma carga definida como <disabled\>.
    • A pilha de clientes MDM recebe esse comando, o que faz com que o CSP de política exclua as configurações de registro do dispositivo, defina as chaves do registro ou ambos, de acordo com a alteração de estado direcionada pela definição de política do ADMX.
  • Se Não Configurado estiver selecionado e você selecionar Aplicar, os seguintes eventos ocorrerão:

    • O servidor ISV do MDM configura um comando Delete SyncML.
    • A pilha de clientes MDM recebe esse comando, o que faz com que o CSP de política exclua as configurações de registro do dispositivo de acordo com a definição de política do ADMX.

O diagrama a seguir mostra a exibição main para o Política de Grupo Editor.

Política de Grupo editor.

O diagrama a seguir mostra as configurações do Política de Grupo "Configurações do Servidor de Publicação 2" no Política de Grupo Editor.

Política de Grupo configurações do servidor editor 2.

A maioria das políticas de grupo é um tipo booliano simples. Para um Política de Grupo booliano, se você selecionar Habilitado, o painel de opções não contém campos de entrada de dados e a carga do SyncML será simplesmente <enabled/>. No entanto, se houver campos de entrada de dados no painel de opções, o servidor MDM deverá fornecer esses dados. O exemplo de habilitação de um Política de Grupo a seguir ilustra essa complexidade. Neste exemplo, 10 pares de valor de nome são descritos por <data /> marcas na carga, que correspondem aos 10 campos de entrada de dados no painel de opções Política de Grupo Editor para o Política de Grupo "Configurações do Servidor de Publicação 2". O arquivo ADMX, que define as Políticas de Grupo, é consumido pelo servidor MDM, da mesma forma que o Política de Grupo Editor o consome. O Política de Grupo Editor exibe uma interface do usuário para receber os dados completos Política de Grupo instância, que o console de administrador de TI do servidor MDM também deve fazer. Para cada <text> elemento e atributo ID na definição de política do ADMX, deve haver um elemento correspondente <data /> e um atributo de ID na carga. O arquivo ADMX impulsiona a definição de política e é exigido pelo servidor MDM por meio do protocolo SyncML.

Importante

Qualquer campo de entrada de dados exibido na página Política de Grupo do Política de Grupo Editor deve ser fornecido no XML codificado da carga SyncML. A carga de dados SyncML é equivalente aos dados Política de Grupo fornecidos pelo usuário por meio de GPEdit.msc.

Para obter mais informações sobre o formato de descrição Política de Grupo, consulte Formato ADMX (Arquivo de Modelo Administrativo). Os elementos podem ser Texto, MultiTexto, Booliano, Enumeração, Decimal ou Lista (para obter mais informações, consulte elementos de política).

Por exemplo, se você pesquisar a cadeia de caracteres , "Publishing_Server2_Name_Prompt" no exemplo Habilitando uma política e sua definição de política ADMX correspondente no arquivo appv.admx, você encontrará as seguintes ocorrências:

Habilitando um exemplo de política:

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

Arquivo Appv.admx:

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

Exemplos de política do ADMX

Os exemplos de SyncML a seguir descrevem como definir uma política de MDM definida por um modelo do ADMX, especificamente a descrição Publishing_Server2_Policy Política de Grupo no arquivo ADMX de virtualização do aplicativo, appv.admx. A funcionalidade que esse Política de Grupo gerencia não é importante; é usada para ilustrar apenas como um ISV do MDM pode definir uma política do ADMX. Esses exemplos syncML ilustram opções comuns e o código SyncML correspondente que pode ser usado para testar suas políticas. A carga do SyncML deve ser codificada por XML; para essa codificação XML, você pode usar a ferramenta online favorita. Para evitar codificar a carga, você pode usar o CData se o MDM der suporte a ele. Para obter mais informações, confira Seções CDATA.

Habilitando uma política

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"/>

Sincronização de solicitação:

<?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 resposta:

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

Desabilitar uma política

Carga útil:

<disabled/>

Sincronização de solicitação:

<?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 resposta:

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

Configurando uma política para não configurada

Carga útil:

(Nenhum)

Sincronização de solicitação:

<?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 resposta:

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

SyncML de exemplo para vários elementos do ADMX

Esta seção descreve o SyncML de exemplo para os vários elementos do ADMX, como Texto, Vários Textos, Decimal, Boolean e List.

Como um caminho e um nome da categoria de política de Política de Grupo são mapeados para uma área de MDM e um nome da política

Aqui está o mapeamento interno do sistema operacional de um Política de Grupo para uma área e nome do MDM. Esse mapeamento faz parte de um conjunto de manifestos do Windows que, quando compilado analisa o arquivo ADMX associado, localiza a política de Política de Grupo especificada e armazena essa definição (metadados) no repositório de clientes CSP da Política de MDM. As políticas apoiadas pelo ADMX são organizadas hierarquicamente. Seu escopo pode ser máquina, usuário ou ter um escopo de ambos. Quando a política MDM é referida por meio de um comando SyncML e do URI do CSP de política, conforme mostrado, esses metadados são referenciados e determina quais chaves de registro são definidas ou removidas. As políticas de escopo do computador são referenciadas por meio do .\Device e das políticas de escopo do usuário por meio do .\User.

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

O conteúdo de dados do SyncML precisa ser codificado para que ele não entre em conflito com as marcas SyncML XML da caldeira. Use essa ferramenta online para codificar e decodificar a caixa de ferramentas do Coder de dados de política.

Snippet de manifesto para a á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 >
         ...

O LocURI para a política de GP acima é:

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

Para construir o SyncML para sua área/política usando os exemplos a seguir, você precisa atualizar a ID de dados e o valor na <Data> seção do SyncML. Os itens prefixados com um caractere '&' são os caracteres de escape necessários e podem ser mantidos conforme mostrado.

Elemento Text

O text elemento simplesmente corresponde a uma cadeia de caracteres e, correspondentemente, a uma caixa de edição em um painel de política exibido por gpedit.msc. A cadeia de caracteres é armazenada no registro do tipo REG_SZ.

Arquivo 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 correspondente:

<?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

O multiText elemento simplesmente corresponde a um REG_MULTISZ cadeia de caracteres do registro e, correspondentemente, a uma grade para inserir várias cadeias de caracteres em uma exibição de painel de política por gpedit.msc. Espera-se que cada cadeia de caracteres no SyncML seja separada pelo caractere Unicode 0xF000 (versão 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 correspondente:

<?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 (e suas variações)

O list elemento simplesmente corresponde a um hive de cadeias de caracteres de registro REG_SZ e correspondentemente a uma grade para inserir várias cadeias de caracteres em uma exibição de painel de política por gpedit.msc. Como esse elemento é representado no SyncML é como uma cadeia de caracteres que contém pares de cadeias de caracteres. Cada par é um REG_SZ chave nome/valor. É melhor aplicar a política por meio de gpedit.msc (executar como Administrador) e ir para o local do hive do registro e ver como os valores da lista são armazenados. Esse local fornece uma ideia da forma como os pares de nome/valor são armazenados para expressá-lo por meio do SyncML.

Observação

Espera-se que cada cadeia de caracteres no SyncML seja separada pelo caractere Unicode 0xF000 (versão codificada: &#xF000;).

As variações do list elemento são ditadas por atributos. Esses atributos são ignorados pelo runtime do Policy Manager. Espera-se que o servidor MDM gerencie os pares nome/valor. Aqui estão alguns exemplos para a Lista de Política de Grupo.

Arquivo 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 correspondente:

<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>

Sem 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 correspondente:

<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 correspondente:

<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 correspondente:

<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 booliano

<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 correspondente:

<?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>