Partage via


Manifeste de mise à jour pour le service Device Update pour IoT Hub

Device Update pour IoT Hub utilise IoT Plug-and-Play pour envoyer des données à des appareils pendant le déploiement. L’un d’eux est le manifeste de mise à jour, une chaîne d’objet JSON sérialisée contenant les métadonnées de la mise à jour à installer. Il est également signé par chiffrement pour permettre à l’agent Device Update pour vérifier son authenticité. Consultez Sécurité de Device Update pour plus d’informations sur l’utilisation du manifeste de mise à jour en vue d’installer du contenu de manière sécurisée.

Manifeste d’importation et manifeste de mise à jour

Il est important de comprendre les différences entre le manifeste d’importation et les concepts de manifeste de mise à jour dans le service Device Update pour IoT Hub :

  • Le manifeste d’importation est créé par quiconque produit la mise à jour correspondante. Il décrit le contenu de la mise à jour à importer dans le service Device Update pour IoT Hub.
  • Le manifeste de mise à jour est généré automatiquement par le service Device Update pour IoT Hub, à l’aide de certaines des propriétés qui ont été définies dans le manifeste d’importation. Il est utilisé pour communiquer des informations pertinentes à l’agent Device Update pendant le processus de mise à jour.

Chaque type de manifeste a son propre schéma et sa propre version de schéma.

Schéma du manifeste de mise à jour

Important

Le schéma JSON du manifeste de mise à jour version 4 est hébergé sur SchemaStore.org.

Exemple de manifeste de mise à jour

{
  "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"
}

Manifeste de mise à jour minimal et manifeste de mise à jour complet

Lorsqu’un manifeste de mise à jour dépasse une certaine taille qui l’empêche d’être communiquée de manière efficace, Device Update pour IoT Hub l’envoie à un l’appareil au format détaché, également appelé manifeste de mise à jour minimal. Un manifeste minimal correspond techniquement aux métadonnées du manifeste de mise à jour et contient les informations nécessaires à l’agent Device Update pour télécharger le manifeste de mise à jour complet et vérifier son authenticité.

Exemple de manifeste de mise à jour minimal :

{
  "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="
      }
    }
  }
}