Compartilhar via


Descrição geral do protocolo de configuração declarado do Windows

O protocolo de configuração declarada do Windows (WinDC) é um modelo de configuração de dispositivos de estado pretendido concebido para uma gestão eficiente e fiável de dispositivos Windows. Utiliza o protocolo OMA-DM SyncML para fornecer todas as definições necessárias num único lote através de um servidor OMA-DM dedicado. A pilha de cliente WinDC no dispositivo processa estas definições para alcançar o estado pretendido da forma mais eficiente e fiável.

O protocolo WinDC requer que um dispositivo tenha uma inscrição OMA-DM separada, que depende do dispositivo que está a ser inscrito no servidor OMA-DM principal. O modelo de estado pretendido é um modelo diferente do modelo atual em que o servidor é responsável pelo estado pretendido do dispositivo. Esta inscrição dupla só é permitida se o dispositivo já estiver inscrito num servidor principal de gestão de dispositivos móveis (MDM). Esta outra inscrição separa a funcionalidade de gestão de estado pretendida da funcionalidade primária.

A inscrição WinDC envolve duas fases:

  • Deteção de configuração declarada: a fase de deteção inicial do protocolo WinDC utiliza um esquema JSON dedicado para consultar os detalhes de inscrição do ponto final de serviço de deteção (DS). Esta fase envolve o envio de pedidos HTTP com cabeçalhos específicos e um corpo JSON que contém detalhes como o domínio do utilizador, o ID do inquilino e a versão do SO. O DS responde com os URLs do serviço de inscrição necessários e as políticas de autenticação com base no tipo de inscrição (Microsoft Entra dispositivos associados ou registados).
  • Inscrição de configuração declarada: a fase de inscrição utiliza o protocolo MS-MDE2 e as novas políticas CSP DMClient para a inscrição dupla. Esta fase envolve definir e LinkedEnrollment/DiscoveryEndpoint acionar a utilização de LinkedEnrollment/Enroll comandos SyncML. Em seguida, o dispositivo pode gerir o respetivo estado de configuração ao interagir com o servidor OMA-DM através destas políticas.

A inscrição WinDC oferece estas funcionalidades de gestão de estado pretendidas:

  • Acesso a recursos: fornece acesso aos recursos necessários para a configuração.
  • Extensibilidade: permite expandir as capacidades de configuração conforme necessário.

Diagrama a ilustrar o modelo WinDC.

Após a inscrição de um dispositivo, o servidor OMA-DM pode enviar uma coleção completa de nomes e valores de definição para um cenário especificado com o CSP DeclaredConfiguration. A pilha WinDC no dispositivo é responsável pelo processamento do pedido de configuração e pela manutenção do respetivo estado, incluindo atualizações ao cenário.

O benefício do modelo de estado pretendido do WinDC é que é eficiente e preciso, especialmente porque é da responsabilidade da pilha de cliente WinDC configurar o dispositivo. A eficiência do WinDC deve-se ao facto de o cliente poder processar de forma assíncrona lotes de definições de cenário, o que liberta os recursos do servidor para fazer outro trabalho. Assim, o protocolo WinDC tem baixa latência. Quanto à qualidade e precisão da configuração, a pilha de cliente WinDC tem conhecimentos detalhados sobre a área da superfície de configuração do dispositivo. Este comportamento inclui o processamento adequado de atualizações contínuas de dispositivos que afetam o cenário de configuração.

Plataformas com suporte

A inscrição WinDC para Microsoft Entra dispositivos associados é suportada para todas as versões do Windows 10/11.

A inscrição WinDC para Microsoft Entra dispositivos registados é suportada para Windows 10/11 com as seguintes atualizações:

  • Windows 11, versão 24H2 com KB5040529 (Compilação 26100.1301 do SO)
  • Windows 11, versão 23H2 com KB5040527 (Compilação 22631.3958 do SO)
  • Windows 11, versão 22H2 com KB5040527 (Compilação 22621.3958 do SO)
  • Windows 10, versão 22H2 com KB5040525 (Compilação 19045.4717 do SO)

Intervalo de atualização

A agenda de atualização do WinDC é criada sempre que existe um documento WinDC presente no dispositivo e não existe atualmente nenhuma tarefa de agendamento para atualização. A tarefa é executada a cada 4 horas por predefinição e pode ser configurada. Sempre que a tarefa de atualização do WinDC é executada, verifica todos os desvios do estado pretendido ao comparar a configuração do sistema atual com a intenção do servidor nos documentos WinDC. Se existirem desvios, o motor WinDC tenta reaplicar os documentos WinDC para o corrigir. Caso um documento WinDC não possa ser reaplicado devido a dados de instância em falta, o documento WinDC é marcado no estado desfasado e é acionada uma nova sessão de sincronização para notificar que existe um desfasamento.

Para identificar, ajustar ou remover a agenda de atualização, utilize o URI RefreshInterval :

  • Identificar a agenda atual:

    <?xml version="1.0" encoding="utf-8"?>
    <SyncML xmlns="SYNCML:SYNCML1.1">
      <SyncBody>
        <Get>
          <CmdID>2</CmdID>
          <Item>
            <Target>
              <LocURI>./Device/Vendor/MSFT/DeclaredConfiguration/ManagementServiceConfiguration/RefreshInterval</LocURI>
            </Target>
          </Item>
        </Get>
        <Final />
      </SyncBody>
    </SyncML>
    
  • Ajustar a agenda atual:

    <?xml version="1.0" encoding="utf-8"?>
    <SyncML xmlns="SYNCML:SYNCML1.1">
      <SyncBody>
        <Replace>
          <CmdID>2</CmdID>
          <Item>
            <Meta>
              <Format>int</Format>
              <Type>text/plain</Type>
            </Meta>
            <Target>
              <LocURI>./Device/Vendor/MSFT/DeclaredConfiguration/ManagementServiceConfiguration/RefreshInterval</LocURI>
            </Target>
            <Data>30</Data>
          </Item>
        </Replace>
        <Final />
      </SyncBody>
    </SyncML>
    
  • Elimine a agenda atual e utilize a predefinição do sistema:

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

Solução de problemas

Se o processamento do documento de configuração declarado falhar, os erros são registados nos registos de eventos do Windows:

  • Administração eventos: Application and Service Logs\Microsoft\Windows\DeviceManagement-Enterprise-Diagnostics-Provider\Admin.
  • Eventos operacionais: Application and Service Logs\Microsoft\Windows\DeviceManagement-Enterprise-Diagnostics-Provider\Operational.

Erros comuns

  • Se o utilizar Âmbito do <LocURI>dispositivo, enquanto o documento DeclaredConfiguration especificar Contexto de utilizador, Administração registo de eventos mostrará uma mensagem de erro semelhante a:

    MDM ConfigurationManager: Command failure status. Configuration Source ID: (DAD70CC2-365B-450D-A8AB-2EB23F4300CC), Enrollment Name: (MicrosoftManagementPlatformCloud), Provider Name: (DeclaredConfiguration), Command Type: (SetValue: from Replace), CSP URI: (./Device/Vendor/MSFT/DeclaredConfiguration/Host/Complete/Documents/DCA000B5-397D-40A1-AABF-40B25078A7F9/Document), Result: (The system cannot find the file specified.)

  • Se o ID do Documento não corresponder entre o e dentro do <LocURI> documento DeclaredConfiguration, Administração registo de eventos mostra uma mensagem de erro semelhante a:

    MDM Declared Configuration: End document parsing from CSP: Document Id: (DCA000B5-397D-40A1-AABF-40B25078A7F91), Scenario: (MSFTVPN), Version: (A0), Enrollment Id: (DAD70CC2-365B-450D-A8AB-2EB23F4300CC), Current User: (S-1-5-21-1004336348-1177238915-682003330-1234), Schema: (1.0), Download URL: (), Scope: (0x1), Enroll Type: (0x1A), File size: (0xDE2), CSP Count: (0x1), URI Count: (0xF), Action Requested: (0x0), Model: (0x1), Result:(0x8000FFFF) Catastrophic failure.

  • Qualquer erro de digitação no OMA-URI resulta numa falha. Neste exemplo, TrafficFilterList é especificado em vez de e Administração registo de TrafficFilterListseventos mostra uma mensagem de erro semelhante a:

    MDM ConfigurationManager: Command failure status. Configuraton Source ID: (DAD70CC2-365B-450D-A8AB-2EB23F4300CC), Enrollment Type: (MicrosoftManagementPlatformCloud), CSP Name: (vpnv2), Command Type: (Add: from Replace or Add), CSP URI: (./user/vendor/msft/vpnv2/Test_SonicWall/TrafficFilterLists), Result: (Unknown Win32 Error code: 0x86000002).

    Também existe outra mensagem de aviso no canal operacional:

    MDM Declared Configuration: Function (DeclaredConfigurationExtension_PolicyCSPConfigureGivenCurrentDoc) operation (ErrorAtDocLevel: one or more CSPs failed) failed with (Unknown Win32 Error code: 0x82d00007).