Gérer les approbations des pilotes à l’aide du service de déploiement Windows Update for Business

Avec le service de déploiement Windows Update entreprise, vous pouvez déployer des mises à jour Windows sur des appareils d’un locataire Microsoft Entra. Aujourd’hui, le service de déploiement prend en charge les déploiements de mises à jour de fonctionnalités Windows 10 et Windows 11, les mises à jour qualité accélérées et les mises à jour des pilotes. Cette rubrique se concentre sur la gestion des déploiements des mises à jour de pilotes. Pour plus d’informations sur le déploiement des mises à jour de fonctionnalités, consultez Déployer une mise à jour de fonctionnalité. Pour plus d’informations sur le déploiement de mises à jour qualité accélérées, consultez Déployer une mise à jour de qualité accélérée.

Lorsque les appareils inscrits dans le service de déploiement Windows Update entreprise analysent Windows Update, le service de déploiement collecte les résultats d’analyse des pilotes applicables qui sont meilleurs que ceux actuellement installés sur l’appareil. Le service les catalogue ensuite pour qu’ils soient parcourus, approuvés et planifiés pour le déploiement. Seul le contenu approuvé à l’aide du service de déploiement est proposé aux appareils tant qu’il reste inscrit dans la gestion des pilotes.

Configuration requise

Les appareils doivent remplir les conditions préalables pour le service de déploiement.

Étape 1 : Inscrire des appareils dans la gestion des pilotes

Lorsque vous inscrivez un appareil dans la gestion des pilotes, le service de déploiement devient l’autorité pour les mises à jour de pilotes provenant de Windows Update. Par conséquent, les appareils ne reçoivent pas de pilotes de Windows Update tant qu’un déploiement n’est pas créé ou qu’ils ne sont pas ajoutés à une stratégie de mise à jour de pilote avec approbations. Pour inscrire un appareil, vous devez fournir un ID azureADDevice .

Demande

POST https://graph.microsoft.com/beta/admin/windows/updates/updatableAssets/enrollAssets
Content-Type: application/json
{
  "updateCategory": "driver",
  "assets": [
    {
      "@odata.type": "#microsoft.graph.windowsUpdates.azureADDevice",
      "id": "fb95f07d-9e73-411d-99ab-7eca3a5122b1"
    },
    {
      "@odata.type": "#microsoft.graph.windowsUpdates.azureADDevice",
      "id": "fb95f07d-9e73-411d-99ab-7eca3a5122b2"
    },
    {
      "@odata.type": "#microsoft.graph.windowsUpdates.azureADDevice",
      "id": "fb95f07d-9e73-411d-99ab-7eca3a5122b3"
    }
  ]
}

Réponse

HTTP/1.1 202 Accepted

Étape 2 : Créer une audience de déploiement pour la réception des mises à jour

Une fois les appareils inscrits et gérés par le service de déploiement, ils peuvent être placés dans des audiences pour un déploiement. Les audiences de déploiement spécifient le contenu à déployer, comment et quand déployer le contenu, et les appareils ciblés.

L’exemple suivant montre comment créer une audience de déploiement. Les appareils ciblés sont spécifiés à l’étape suivante.

Demande

POST https://graph.microsoft.com/beta/admin/windows/updates/deploymentAudiences
Content-Type: application/json
{
}

Réponse

HTTP/1.1 201 Created
Content-Type: application/json
{
    "@odata.context": "https://graph.microsoft.com/beta/$metadata#admin/windows/updates/deploymentAudiences/$entity",
    "id": "f660d844-30b7-46e4-a6cf-47e36164d3cb",
    "applicableContent": []
}

Étape 3 : Affecter des appareils à l’audience de déploiement

Une fois qu’une audience de déploiement est créée, vous pouvez attribuer des appareils à l’audience de déploiement. Une fois l’audience de déploiement correctement mise à jour, le service de déploiement Windows Update for Business commence à collecter les résultats d’analyse à partir de Windows Update pour créer un catalogue de pilotes applicables à parcourir, à approuver et à planifier pour le déploiement.

L’exemple suivant montre comment ajouter des appareils Microsoft Entra en tant que membres de l’audience de déploiement.

Demande

POST https://graph.microsoft.com/beta/admin/windows/updates/deploymentAudiences/f660d844-30b7-46e4-a6cf-47e36164d3cb/updateAudience
Content-type: application/json
{
    "addMembers": [
        {
            "@odata.type": "#microsoft.graph.windowsUpdates.azureADDevice",
            "id": "fb95f07d-9e73-411d-99ab-7eca3a5122b1"
        },
        {
            "@odata.type": "#microsoft.graph.windowsUpdates.azureADDevice",
            "id": "fb95f07d-9e73-411d-99ab-7eca3a5122b2"
        },
        {
            "@odata.type": "#microsoft.graph.windowsUpdates.azureADDevice",
            "id": "fb95f07d-9e73-411d-99ab-7eca3a5122b3"
        }
    ]
}

Réponse

HTTP/1.1 202 Accepted

Étape 4 : Créer une stratégie de mise à jour

Une fois les appareils ajoutés à une audience de déploiement, vous pouvez créer une stratégie de mise à jour qui régit le déploiement du contenu sur les audiences de déploiement associées. La stratégie de mise à jour est un modèle de haut niveau afin que le contenu puisse être déployé de la même façon pour un public donné sans avoir à créer, gérer et associer des déploiements individuels. Le contenu est déployé sur les appareils dans les audiences associées lorsqu’une approbation de contenu est ajoutée à la stratégie.

L’exemple suivant montre comment créer une stratégie de mise à jour et lui affecter une audience de déploiement existante.

Demande

POST https://graph.microsoft.com/beta/admin/windows/updates/updatePolicies
Content-type: application/json
{
  "audience": {
    "@odata.id": "f660d844-30b7-46e4-a6cf-47e36164d3cb1"
  }
}

Réponse

HTTP/1.1 202 Accepted
Content-type: application/json
{
    "@odata.context": "https://graph.microsoft.com/beta/$metadata#admin/windows/updates/updatePolicies/$entity",
    "id": "d7a89208-17c5-4daf-a164-ce176b00e4ef",
    "createdDateTime": "2023-01-19T07:58:01.9721459Z",
    "autoEnrollmentUpdateCategories": [],
    "complianceChangeRules": [],
    "deploymentSettings": {
        "schedule": null,
        "monitoring": null,
        "contentApplicability": null,
        "userExperience": null,
        "expedite": null
    }
}

Étape 5 : Obtenir l’inventaire des mises à jour des pilotes

Une fois les appareils ajoutés à une audience de déploiement, vous pouvez parcourir et consulter un catalogue de contenu applicable pour les pilotes et les microprogrammes qui sont meilleurs que ce qui est actuellement installé sur la collection d’appareils dans une audience de déploiement. Le contenu applicable fournit également une liste d’appareils correspondants de Microsoft Entra appareils applicables à chaque pilote.

L’exemple suivant montre comment obtenir l’inventaire des mises à jour de pilotes disponibles pour les appareils dans une audience de déploiement existante. Remarque : chaque page de résultats retourne jusqu’à 100 entrées de catalogue. Utilisez le jeton de continuation retourné pour afficher plus de résultats.

Demande

GET https://graph.microsoft.com/beta/admin/windows/updates/deploymentAudiences/f660d844-30b7-46e4-a6cf-47e36164d3cb/applicableContent?$expand=catalogEntry,matchedDevices

Réponse

HTTP/1.1 200 OK
Content-type: application/json
{
    "value": [
        {
            "@odata.context": "https://graph.microsoft.com/beta/$metadata#admin/windows/updates/deploymentAudiences('f660d844-30b7-46e4-a6cf-47e36164d3cb')/applicableContent", 
            "catalogEntryId": "5d6dede684ba5c4a731d62d9c9c2a99db12c5e6015e9f8ad00f3e9387c7f399c,
             "catalogEntry": {
                "@odata.type": "#microsoft.graph.windowsUpdates.driverUpdateCatalogEntry",
                "id": "5d6dede684ba5c4a731d62d9c9c2a99db12c5e6015e9f8ad00f3e9387c7f399c",
                "displayName": "",
                "deployableUntilDateTime": null,
                "releaseDateTime": "",
                "description": "",
                "driverClass": "",
                "provider": "",
                "setupInformationFile": null,
                "manufacturer": "",
                "version": "",
                "versionDateTime": ""
            }, 
              "matchedDevices": [], 
              "matchedDevices@odata.nextLink":"https://graph.microsoft.com/beta/admin/windows/updates/deploymentAudiences/f660d844-30b7-46e4-a6cf-47e36164d3cb/applicableContent/5d6dede684ba5c4a731d62d9c9c2a99db12c5e6015e9f8ad00f3e9387c7f399c/matchedDevices"
        }, 
        ...99 entries
    ], 
    "@odata.nextLink":"https://graph.microsoft.com/beta/admin/windows/updates/deploymentAudiences/f660d844-30b7-46e4-a6cf-47e36164d3cb/applicableContent?$expand=catalogEntry&$skiptoken=%5b%7B%22token%22%3a%22%2bRID%3a~nx5uAPpQsrzgSQAAAAAAA%3d7b1e923b%22range%22%3a%7b22min%22%3a%max%22%3a22FF%227D%7D%5d"
}

En raison de la grande taille des listes, le comportement de matchedDevice retour par défaut lorsqu’un appelant développe la propriété de navigation matchedDevices est une collection vide et un jeton de continuation pour obtenir la première page de résultats. L’exemple suivant montre comment obtenir la liste de matchedDevices pour un .catalogEntry Remarque : chaque page de résultats retourne jusqu’à 100 appareils. Utilisez le jeton de continuation retourné pour afficher plus de résultats.

Demande

GET https://graph.microsoft.com/beta/admin/windows/updates/deploymentAudiences/f660d844-30b7-46e4-a6cf-47e36164d3cb/applicableContent/5d6dede684ba5c4a731d62d9c9c2a99db12c5e6015e9f8ad00f3e9387c7f399c/matchedDevices

Réponse

HTTP/1.1 200 OK
Content-type: application/json
{
    "value": [
        {   
          "deviceId": "id-1",
          "recommendedBy": ["Microsoft", "Contoso"]             
        }, 
        {   
          "deviceId": "id-2",
          "recommendedBy": ["Microsoft", "Contoso"]             
        }, 
        {   
          "deviceId": "id-3",
          "recommendedBy": ["Microsoft", "Contoso"]             
        }, 
        ...97 entries
    ], 
   "@odata.nextLink":"https://graph.microsoft.com/beta/admin/windows/updates/deploymentAudiences/f660d844-30b7-46e4-a6cf-47e36164d3cb/applicableContent/5d6dede684ba5c4a731d62d9c9c2a99db12c5e6015e9f8ad00f3e9387c7f399c/matchedDevices?$skiptoken=deviceId:{id-97}"
}

Étape 5 : Créer l’approbation du pilote

Les déploiements pour les mises à jour de pilotes sont créés et appliqués à une stratégie par le biais de modifications de conformité. Les approbations de contenu pour les mises à jour de pilotes sont ajoutées à une stratégie en spécifiant l’entrée de catalogue associée à une mise à jour de pilote spécifique. Le contenu est remis uniquement aux appareils dans les audiences de déploiement associées à la stratégie de mise à jour lorsqu’elle est approuvée.

L’exemple suivant montre comment ajouter une approbation de contenu à une stratégie existante.

Demande

POST https://graph.microsoft.com/beta/admin/windows/updates/updatePolicies/d7a89208-17c5-4daf-a164-ce176b00e4ef/complianceChanges
Content-type: application/json
{
    "@odata.type": "#microsoft.graph.windowsUpdates.contentApproval",
    "content":{
        "@odata.type": "#microsoft.graph.windowsUpdates.catalogContent",
        "catalogEntry":{
            "@odata.type": "#microsoft.graph.windowsUpdates.driverUpdateCatalogEntry",
            "id": "5d6dede684ba5c4a731d62d9c9c2a99db12c5e6015e9f8ad00f3e9387c7f399c"
        }
    },
    "deploymentSettings": {
        "@odata.type": "microsoft.graph.windowsUpdates.deploymentSettings",
        "schedule": {
            "startDateTime": "2023-02-14T01:00:00Z"
        }
    }    
}

Réponse

HTTP/1.1 201 Created
Content-type: application/json
{
    "@odata.context": "https://graph.microsoft.com/beta/$metadata#admin/windows/updates/updatePolicies('d7a89208-17c5-4daf-a164-ce176b00e4ef')/complianceChanges/$entity",
    "@odata.type": "#microsoft.graph.windowsUpdates.contentApproval",
    "id": "dbf29574-ffd9-49cf-87f2-f03629e596ba",
    "createdDateTime": "2023-01-19T08:41:29.3840994Z",
    "isRevoked": false,
    "revokedDateTime": "0001-01-01T00:00:00Z",
    "content": {
        "@odata.type": "#microsoft.graph.windowsUpdates.catalogContent"
        "catalogEntry@odata.context": "https://graph.microsoft.com/beta/$metadata#admin/windows/updates/updatePolicies('d7a89208-17c5-4daf-a164-ce176b00e4ef')/complianceChanges('dbf29574-ffd9-49cf-87f2-f03629e596ba')/microsoft.graph.windowsUpdates.contentApproval/content/microsoft.graph.windowsUpdates.catalogContent/catalogEntry/$entity",
        "id": "5d6dede684ba5c4a731d62d9c9c2a99db12c5e6015e9f8ad00f3e9387c7f399c",
        "displayName": "Microsoft - Test - 1.0.0.1",
        "deployableUntilDateTime": null,
        "releaseDateTime": "0001-01-21T04:18:32Z",
        "description": "Microsoft test driver update released in January 2021",
        "driverClass": "OtherHardware",
        "provider": "Microsoft",
        "setupInformationFile": null,
        "manufacturer": "Microsoft",
        "version": "1.0.0.1",
        "versionDateTime": "2021-01-11T02:43:14Z"
        }        
    },
    "deploymentSettings": {
        "schedule": null,
        "monitoring": null,
        "contentApplicability": null,
        "userExperience": null,
        "expedite": null
        "schedule": {
            "startDateTime": "2023-02-14T01:00:00Z",
            "gradualRollout": {
                "@odata.type": "#microsoft.graph.windowsUpdates.rateDrivenRolloutSettings",
                "durationBetweenOffers": "P1D",
                "devicesPerOffer": 0
            }
        }
    }
}

Pendant le déploiement d’un pilote

Pendant qu’un déploiement est en cours, vous pouvez mettre à jour ses membres d’audience et empêcher le contenu d’être proposé aux appareils s’ils ne l’ont pas déjà reçu, en définissant la propriété isRevoked sur true. Il s’agit de la méthode auditable pour suspendre un déploiement et remplir automatiquement les propriétés revokedBy et revokedDateTime . Pour reprendre l’offre du contenu, créez une approbation.

Demande

PATCH https://graph.microsoft.com/beta/admin/windows/updates/updatePolicies/d7a89208-17c5-4daf-a164-ce176b00e4ef/complianceChanges/dbf29574-ffd9-49cf-87f2-f03629e596ba
Content-type: application/json
{
    "@odata.type": "#microsoft.graph.windowsUpdates.contentApproval",
    "isRevoked": true
}

Réponse

HTTP/1.1 204 No Content

Désinscrire de la gestion des pilotes

Lorsque vous désinscrivez un appareil de la gestion par le service pour une catégorie de mise à jour donnée, l’appareil n’est plus géré par le service de déploiement et peut commencer à recevoir d’autres mises à jour de Windows Update en fonction de sa configuration de stratégie. L’appareil non inscrit est supprimé de toutes les audiences et déploiements qui contiennent du contenu pour la catégorie de mise à jour donnée. L’appareil reste inscrit auprès du service et est toujours inscrit et reçoit du contenu pour d’autres catégories de mise à jour (le cas échéant).

Demande

POST https://graph.microsoft.com/beta/admin/windows/updates/updatableAssets/unenrollAssets
Content-Type: application/json
{
  "updateCategory": "driver",
  "assets": [
    {
      "@odata.type": "#microsoft.graph.windowsUpdates.azureADDevice",
      "id": "fb95f07d-9e73-411d-99ab-7eca3a5122b1"
    }
  ]
}

Réponse

HTTP/1.1 202 Accepted