Manifest aktualizace zařízení pro IoT Hub aktualizace
Služba Device Update pro IoT Hub používá IoT Plug and Play k odesílání dat do zařízení během nasazování. Jedním z nich je manifest aktualizace, serializovaný řetězec objektu JSON obsahující metadata aktualizace, která se má nainstalovat. Je také kryptograficky podepsaný, aby mohl agent aktualizace zařízení ověřit svou pravost. Další informace o tom, jak se manifest aktualizace používá k zabezpečené instalaci obsahu, najdete v tématu Zabezpečení služby Device Update.
Import manifestu vs. aktualizační manifest
Je důležité pochopit rozdíly mezi manifestem importu a koncepty manifestu aktualizace ve službě Device Update pro IoT Hub:
- Manifest importu vytvoří ten, kdo vytvoří odpovídající aktualizaci. Popisuje obsah aktualizace, která se bude importovat do služby Device Update pro IoT Hub.
- Manifest aktualizace se automaticky vygeneruje službou Device Update pro IoT Hub pomocí některých vlastností definovaných v manifestu importu. Používá se ke sdělení relevantních informací agentovi aktualizace zařízení během procesu aktualizace.
Každý typ manifestu má vlastní schéma a verzi schématu.
Aktualizace schématu manifestu
Důležité
Aktualizace schématu JSON manifestu verze 4 je hostovaná na SchemaStore.org.
Příklad manifestu aktualizace
{
"manifestVersion": "4",
"updateId": {
"provider": "Contoso",
"name": "Toaster",
"version": "1.0"
},
"compatibility": [
{
"deviceManufacturer": "Contoso",
"deviceModel": "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"
}
Manifest úplné aktualizace vs. miniaktualizační manifest
Pokud manifest aktualizace překročí určitou velikost, která brání efektivní komunikaci, aktualizace zařízení pro IoT Hub ho odešle do zařízení v odpojené podobě, označované také jako manifest mini aktualizace. Mini manifest je technicky metadata pro manifest aktualizace a obsahuje informace potřebné pro agenta aktualizace zařízení ke stažení úplného manifestu aktualizace a ověření jeho pravosti.
Příklad miniaktualizačního manifestu:
{
"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="
}
}
}
}