Manifesto de atualização da Atualização de Dispositivo para Hub IoT
A Atualização de Dispositivo para Hub IoT usa o IoT Plug and Play para enviar dados para dispositivos durante a implantação. Um deles é o manifesto de atualização, uma cadeia de caracteres de objeto JSON serializada que contém metadados da atualização a ser instalada. Também é assinado criptograficamente para permitir que o agente de Atualização de Dispositivo verifique sua autenticidade. Para obter mais informações sobre como o manifesto de atualização é usado para instalar conteúdo com segurança, consulte a Segurança da Atualização de Dispositivo.
Manifesto de importação e manifesto de atualização
É importante entender as diferenças entre os conceitos de manifesto de importação e manifesto de atualização na Atualização de Dispositivo para Hub IoT:
- O manifesto de importação é criado por quem cria a atualização correspondente. Ele descreve o conteúdo da atualização que será importada para a Atualização de Dispositivo para Hub IoT.
- O manifesto de atualização é gerado automaticamente pelo serviço de Atualização de Dispositivo para Hub IoT usando algumas das propriedades definidas no manifesto de importação. Ele é usado para comunicar informações relevantes ao agente de Atualização de Dispositivo durante o processo de atualização.
Cada tipo de manifesto tem o próprio esquema e versão de esquema.
Atualizar esquema de manifesto
Importante
A versão 4 do esquema JSON do manifesto de atualização é hospedada em SchemaStore.org.
Exemplo de manifesto de atualização
{
"manifestVersion": "4",
"updateId": {
"provider": "Contoso",
"name": "Toaster",
"version": "1.0"
},
"compatibility": [
{
"manufacturer": "Contoso",
"model": "Toaster"
}
],
"instructions": {
"steps": [
{
"handler": "microsoft/swupdate:1",
"handlerProperties": {
"installedCriteria": "1.0"
},
"files": [
"fileId0"
]
}
]
},
"files": {
"fileId0": {
"filename": "contoso.toaster.1.0.swu",
"sizeInBytes": 718,
"hashes": {
"sha256": "mcB5SexMU4JOOzqmlJqKbue9qMskWY3EI/iVjJxCtAs="
}
}
},
"createdDateTime": "2021-09-28T18:32:01.8404544Z"
}
Manifesto de atualização completa vs mini
Quando um manifesto de atualização exceder um determinado tamanho que impede que ele seja comunicado com eficiência, a Atualização de Dispositivo para Hub IoT a enviará para o dispositivo em formato desanexado, também conhecido como mini manifesto de atualização. Um mini manifesto é tecnicamente metadados para o manifesto de atualização e contém as informações necessárias para que o agente de Atualização de Dispositivo baixe o manifesto de atualização completo e verifique sua autenticidade.
Exemplo de mini manifesto de atualização:
{
"manifestVersion": "4",
"updateId": {
"provider": "Contoso",
"name": "Toaster",
"version": "1.0"
},
"detachedManifestFileId": "fileId1",
"files": {
"fileId1": {
"filename": "contoso.toaster.1.0.updatemanifest.json",
"sizeInBytes": 2048,
"hashes": {
"sha256": "789s9PDfX4uA9wFUubyC30BWkLFbgmpkpmz1fEdqo2U="
}
}
}
}