Guia do usuário do Centro de Atualização do Dispositivo

O portal do Device Update Center fornece aos OEMs uma maneira de:

  • Publicar pacotes personalizados OEM (OCP) no Windows Update Cloud
  • Pacotes personalizados OEM de voo para seus dispositivos com base em anéis de voo
  • Atualizações do sistema operacional de voo para seus dispositivos com base em anéis de voo

Pré-requisitos para o Centro de Atualização de Dispositivos

Examine os seguintes requisitos antes de iniciar o processo de registro:

  • Você deve ter um certificado de assinatura de código EV (Validação Estendida). Marcar se sua empresa já tem um certificado de assinatura de código. Se sua empresa já tiver um certificado, tenha o certificado disponível. Você precisará do certificado para assinar arquivos. Se sua empresa não tiver um certificado, você precisará comprar um como parte do processo de registro.

  • Você precisará entrar como administrador global no Azure Active Directory da sua organização. Se você não souber se sua organização tem um Azure Active Directory, entre em contato com seu departamento de TI. Se sua organização não tiver um Azure Active Directory, você poderá criar um gratuitamente.

  • Você deve ter autoridade para assinar acordos legais em nome de sua organização.

Etapa 1: Configurar

Inscrição

  1. Crie uma conta do Centro de Desenvolvimento de Hardware do Windows para acessar o DUC (Centro de Atualização de Dispositivo). Serão necessários:

    • Um certificado de assinatura de código de Validação Estendida (EV): usado para validar o arquivo cab de atualização enviado para atualizações
    • Uma conta do AAD (Azure Active Directory) com direitos de administrador: usada para assinar contratos legais

    Consulte Registrar para o Programa de Hardware para obter as instruções detalhadas sobre o processo de registro.

  2. Inscrever-se no Windows 10 IoT Core Services

  3. Faça logon no Centro de Desenvolvimento de Hardware com a função de administrador e especifique funções para outros usuários em sua organização. Serão necessários:

    • Função do Encaminhador de Driver para envio de atualização
    • Função proprietário da etiqueta de remessa para atualizar a versão de pré-lançamento

    Consulte Alterar a função de um usuário para obter instruções detalhadas.

Instalar as ferramentas

  1. Kit de Avaliação e Implantação do Windows (Windows ADK)
  2. Complementos do ADK do IoT Core
  3. Pacotes do Windows 10 IoT Core
  4. Obtenha o BSP para sua plataforma do fornecedor de silício. Consulte Windows 10 IoT Core BSP

Configurar seu ambiente

  1. Inicie o IoTCorePShell (inicia um prompt de comando com privilégios elevados) e crie/abra seu workspace

    new-ws C:\MyWorkspace <oemname> <arch>
    (or)
    open-ws C:\MyWorkspace
    

    Observe que a versão inicial do pacote personalizado OEM está definida como 10.0.0.0.

  2. Configure o certificado EV usado no Centro de Atualização de Dispositivo e o certificado de assinatura de código no Workspace.

    <!--Specify the retail signing certificate details, Format given below -->
    <RetailSignToolParam>/s my /i "Issuer" /n "Subject" /ac "C:\CrossCertRoot.cer" /fd SHA256</RetailSignToolParam>
    <!--Specify the ev signing certificate details, Format given below -->
    <EVSignToolParam>/s my /i "Issuer" /n "Subject" /fd SHA256</EVSignToolParam>
    
    • Atualize o "Emissor", "Assunto" de acordo com os detalhes do certificado.
    • CrossCertRoot.cer corresponde à raiz do certificado de assinatura cruzada publicada na Lista de Certificados Cruzados.

    Você pode usar o mesmo certificado EV usado para o Centro de Desenvolvimento de Hardware ou obter um diferente apenas para fins de assinatura de código. É recomendável manter um certificado separado para cada finalidade.

Etapa 2: Criar um novo produto

  1. Criar um novo produto usando Add-IoTProduct

    Add-IoTProduct <productname> <bspname>
    (or) newproduct <productname> <bspname>
    
  2. Forneça as informações do SMBIOS quando solicitado. Para a Qualcomm, isso é armazenado em um arquivo SMBIOS.cfg. Para outras plataformas, você precisará atualizar o BIOS para refletir esses valores.

    Consulte Requisitos de licença OEM para os campos obrigatórios do SMBIOS. Os campos de chave usados na atualização são:

    • Nome do Produto do Sistema, conhecido no portal de atualização como Modelo de Dispositivo.

    • Produto de Placa Base, conhecido no portal de atualização como ID do Hardware Variant.

    Observe que IoTDeviceModel_<productname>.xml também é criado. Isso é usado para registrar o modelo de dispositivo na próxima etapa.

    Captura de tela – Novo Produto do PowerShell

Etapa 3: Registrar o modelo de dispositivo no Centro de Atualização de Dispositivos

  1. No portal do Centro de Atualização de Dispositivos, selecione Novo Modelo de Dispositivo.

    Novo modelo de dispositivo – Selecione

  2. Navegue pelos arquivos e selecione o IoTDeviceModel_<productname>.xml no workspace.

    Novo Modelo de Dispositivo – Workspace

  3. Confirme a especificação do modelo de dispositivo e pressione Enviar.

    Novo modelo de dispositivo – Enviar

    Uma nova entrada de modelo de dispositivo será adicionada à tabela de modelo de dispositivo. Você também verá um link de download nessa tabela.

  4. Baixar o arquivo zip (CUSConfig.zip)

Criar uma imagem base para o dispositivo

  1. No IoTCoreShell, importe o arquivo de configuração usando Import-IoTDUCConfig

    Import-IoTDUCConfig <productname> "C:\Downloads\CUSConfig.zip"
    (or) importcfg <productname> "C:\Downloads\CUSConfig.zip"
    

    Isso também editará os arquivos OEMInputXML para a inclusão de arquivos FM e IDs de recurso necessários. Isso também remove IOT_GENERIC_POP recurso, se presente.

    Importar arquivo de configuração

  2. Assinar todos os binários necessários com o certificado de assinatura de código usando Add-IoTSignature e Redo-IoTCabSignature

    # enable retail signing
    Set-IoTRetailSign On
    (or) retailsign On
    # sign all binaries in the workspace
    Add-IoTSignature C:\MyWorkspace *.sys,*.dll,*.exe
    (or) signbinaries C:\MyWorkspace *.sys,*.dll,*.exe
    # re-sign prebuilt bsp cabs if applicable
    Redo-IoTCabSignature <srcbspdir> <dstbspdir>
    
  3. Criar a imagem base usando os comandos abaixo

    # build all packages
    buildpkg All
    # build the image
    buildimage <productname> <retail/test>
    # build recovery image, if recovery mechanism needed
    buildrecovery <productname> <retail/test>
    

    Isso fornece a imagem base com o pacote personalizado OEM versão 10.0.0.0.

  4. Valide essa imagem no dispositivo.

Etapa 4: Publicar atualizações

Até agora, criamos uma imagem atualizável que pode ser usada para fabricar e enviar os dispositivos. Nesta etapa, examinaremos o procedimento de criação de pacotes de atualização e publicação no portal.

Criar pacotes de atualização

  1. Atualize o número de versão primeiro usando Set-IoTCabVersion

    Set-IoTCabVersion <a.b.c.d>
    (or) setversion <a.b.c.d>
    

    Verifique se a.b.c.d é uma versão mais alta do que o conjunto de versão anterior.

  2. Se novas versões de drivers BSP estiverem disponíveis, copie-as para a configuração da pasta BSP anteriormente (exemplo, C:\BSP). Como alternativa, mantenha todos os drivers atualizados em uma pasta diferente, por exemplo, C:\BSPv2 e atualize o xml do workspace.

  3. Se houver uma nova versão do appx existente, crie um novo appx com o mesmo nome. Observe que a ID no customizations.xml gerado será igual à versão anterior.

  4. Se as versões atualizadas dos drivers estiverem disponíveis, atualize os binários e o arquivo xml de empacotamento.

  5. Atualize qualquer outro conteúdo do pacote conforme aplicável.

  6. Assinar todos os binários necessários com o certificado de assinatura de código usando Add-IoTSignature e Redo-IoTCabSignature

    # enable retail signing
    Set-IoTRetailSign On
    (or) retailsign On
    # sign all binaries in the workspace
    Add-IoTSignature C:\MyWorkspace *.sys,*.dll,*.exe
    (or) signbinaries C:\MyWorkspace *.sys,*.dll,*.exe
    # re-sign prebuilt bsp cabs if applicable
    Redo-IoTCabSignature <srcbspdir> <dstbspdir>
    
  7. Criar a imagem de atualização usando os comandos abaixo

    # build all packages
    buildpkg All
    # build the image
    buildimage <productname> <retail/test>
    # build recovery image, if recovery mechanism needed
    buildrecovery <productname> <retail/test>
    

    Isso fornece a imagem base com a versão <do pacote personalizado OEM a.b.c.d>.

  8. Valide essa imagem no dispositivo para garantir que o dispositivo seja inicializado com todas as atualizações incluídas.

  9. Após a validação bem-sucedida do build de atualização, exporte os pacotes necessários usando Export-IoTDUCCab

    Export-IoTDUCCab <productname> <retail/test>
    (or) exportpkgs <productname> <retail/test>
    

    <productname>_OCP_<version>.cabserá criado na pasta junto com <productname>_OCP_pkgver.txt o <workspacedir>\Build\<arch>\<productname>\<config>\<version>\ arquivo que lista os cabs incluídos junto com suas informações de versão. Essa cabine será assinada com o certificado EV configurado no xml do workspace.

Publicar atualizações

  1. No portal do Centro de Atualização de Dispositivos, selecione o Modelo de Dispositivo na tabela Modelo de Dispositivo

  2. Selecione Atualizar envio>Novo pacote personalizado

    Novo pacote personalizado

  3. Navegue pelos arquivos e selecione o <productname>_OCP_<version>.cab no workspace.

    Novo pacote personalizado – Selecione

  4. Confirme as informações de versão da versão e pressione Publicar.

    O envio da versão passa por um processo que consiste em:

    • Validação: verificação do conteúdo do pacote carregado quanto à autenticidade e correção

    • Assinar : assina os táxis com o certificado da Microsoft para publicação no Windows Update

    • Publicar : etapa de publicação real no Windows Update

    • Finalizar: finalizando o processo de publicação

  5. Você pode marcar o status do processo de publicação clicando no link Status. Esse processo leva algum tempo para ser concluído.

    Novo pacote personalizado – Status

Etapa 5: Direcionamento de atualizações

Depois de publicar as atualizações com êxito, agora você pode controlar o processo de entrega especificando as regras de direcionamento.

  1. Selecione Atualizar versão de pré-lançamento e selecione Novo Voo

    Novo Voo

  2. Na caixa de diálogo Novo Voo:

    Caixa de diálogo Novo Voo

    a. Especifique o anel (Preview / / EarlyAdopterGeneralAvailability), por exemplo, Visualizar. Observe que o arquivo xml baixado e incluído na imagem define esse valor como GeneralAvailability por padrão

    • Anel de visualização : atualiza um conjunto limitado de dispositivos, principalmente no laboratório

    • Anel EarlyAdopter : atualiza um número moderado de dispositivos no ambiente do usuário, incluindo dispositivos auto-host

    • Anel GeneralAvailability : atualiza todos os dispositivos no mercado

    b. Selecione a caixa versão do sistema operacional se quiser especificar a nova versão do sistema operacional e, em seguida, selecione a versão necessária do sistema operacional

    c. Selecione a caixa versão do pacote personalizado OEM se quiser especificar a nova versão do pacote personalizado OEM e, em seguida, selecione a versão do pacote personalizado OEM necessária, por exemplo, a.b.c.d

    d. Selecione Avançar

Observação

Atualize a versão do sistema operacional para o primeiro 10.0.17763.615 para dar suporte à assinatura sha-2. Consulte a seção Substituição de SHA1 para IoT Core abaixo para obter detalhes.

  1. Na caixa de diálogo Confirmar Versão de Pré-lançamento , selecione Publicar. O envio de direcionamento passa por um processo que consiste em

    • Validação: verificando a exatidão das regras de direcionamento

    • Direcionamento: configurações reais definidas no Windows Update

    • Finalizar : finalizando o processo de direcionamento

  2. Você pode marcar o status do processo de publicação clicando no link Status.

    Status da Nova Versão de Pré-Lançamento

    Neste ponto, o sistema de Windows Update está definido para entregar os pacotes de atualização necessários ao dispositivo. Pode levar algumas horas até que as configurações sejam propogated.

Etapa 6: Validar as atualizações no dispositivo

Agora que as atualizações estão disponíveis na atualização do Windows, você pode validar as atualizações no dispositivo agora. Os anéis são fornecidos para habilitar a distribuição em etapas das atualizações, começando com Preview, EarlyAdopter e GeneralAvailability.

  1. Configure seu dispositivo para o Anel de Visualização. Isso pode ser definido usando a API de DM do Azure ou a API atualizar UWP

  2. Permita que o dispositivo verifique se há atualização, o dispositivo detectará a atualização publicada, baixará e instalará automaticamente (com base nas políticas de atualização configuradas).

    Esse processo pode levar 24 horas ou mais, dependendo do tempo de verificação e das configurações de horas ativas.

Substituição sha1 para IoT Core

A substituição sha1 para Windows 10 IoT Core sistema operacional foi implementada e o suporte somente sha-2 está habilitado a partir da atualização de julho do Windows 10 IoTCore versão 1809 (10.0.17763.615). A partir de novembro de 2019, todos os pacotes personalizados do OEM serão assinados apenas com assinaturas SHA-2 e todos os dispositivos devem primeiro ser atualizados para a Atualização de julho do Windows 10 1809 (10.0.17763.615) ou versão posterior para poder direcionar pacotes personalizados OEM assinados por SHA-2.

Observação

As atualizações assinadas por SHA-2 não serão instaladas em versões do sistema operacional anteriores à 10.0.17763.611. É recomendável atualizar o sistema operacional do dispositivo primeiro para o lançamento dessa versão e, em seguida, direcionar as atualizações de pacote personalizado do OEM.

Para dispositivos que executam o Windows 10 IoTCore, versão 1803, você precisará atualizar para a atualização de julho do Windows 10 IoTCore versão 1803 (10.0.17134.885). É altamente recomendável atualizar dispositivos 1803 também para a atualização de julho da versão 1809.

Expiração das raízes de Assinatura e Certificado Cruzado do OEM

Os certificados raiz assinados entre elas são SHA1 e terão suporte até as datas de expiração. Essa expiração não afeta os drivers já assinados na imagem e afeta a assinatura de novos drivers após a data de expiração.

Importante

A partir Windows 10 IoT Core versão 1809 atualização de 10 de novembro de 2020(17763.1577), há suporte para a assinatura do driver de kernel OEM. Com isso, o certificado de assinatura de código não precisa ser encadeado à raiz com sinal cruzado. A assinatura do OEM requer que os recursos de proteção de dispositivo e inicialização segura sejam habilitados para imagens de varejo e de teste. Consulte Branch IoT-ADK-AddonKit 17763-v7 para obter as atualizações de ferramentas e certificados de exemplo.

Confira os links a seguir para obter mais informações sobre a substituição do SHA1: