Partager via


Contrôles programmatiques pour les mises à jour qualité Windows accélérées

Dans cet article, vous allez :

Conditions préalables

Tous les prérequis windows autopatch doivent être respectés , notamment s’assurer que les outils d’intégrité de mise à jour sont installés sur les clients.

  • Les outils d’intégrité de mise à jour sont installés à partir de KB4023057. Pour confirmer la présence des outils d’intégrité de mise à jour sur un appareil, utilisez l’une des méthodes suivantes :
    • Exécuter un test de préparation pour les mises à jour accélérées
    • Recherchez le dossier C :\Program Files\Microsoft Update Health Tools ou passez en revue Ajouter des programmes de suppression pour Microsoft Update Health Tools.
    • Exemple de script PowerShell pour vérifier l’installation des outils : Get-CimInstance -ClassName Win32_Product \| Where-Object {$_.Name -match "Microsoft Update Health Tools"}

Autorisations

Les autorisations suivantes sont nécessaires pour les requêtes répertoriées dans cet article :

Certains rôles, tels que l’administrateur de déploiement Windows Update, disposent déjà de ces autorisations.

Points de terminaison requis

Vous devez avoir accès aux points de terminaison suivants :

Windows Update points de terminaison

  • *.prod.do.dsp.mp.microsoft.com
  • *.windowsupdate.com
  • *.dl.delivery.mp.microsoft.com
  • *.update.microsoft.com
  • *.delivery.mp.microsoft.com
  • tsfe.trafficshaping.dsp.mp.microsoft.com

API Graph points de terminaison :

  • devicelistenerprod.microsoft.com
  • login.windows.net
  • payloadprod*.blob.core.windows.net

Ouvrir l’Explorer Graph

Pour cet article, vous allez utiliser Graph Explorer pour effectuer des demandes aux API Microsoft Graph pour récupérer, ajouter, supprimer et mettre à jour des données. Graph Explorer est un outil de développement qui vous permet d’en savoir plus sur les API Microsoft Graph. Pour plus d’informations sur l’utilisation de Graph Explorer, consultez Prise en main de Graph Explorer.

Warning

  • Les demandes répertoriées dans cet article nécessitent une connexion avec un compte Microsoft 365. Si nécessaire, un essai gratuit d’un mois est disponible pour Microsoft 365 Business Premium.
  • L’utilisation d’un locataire de test pour apprendre et vérifier le processus de déploiement est fortement recommandée. Graph Explorer est destiné à être un outil d’apprentissage. Veillez à bien comprendre l’octroi du consentement et le type de consentement pour Graph Explorer avant de continuer.
  1. À partir d’un navigateur, accédez à Graph Explorer et connectez-vous à l’aide d’un compte d’utilisateur Microsoft Entra.

  2. Vous devrez peut-être activer l’autorisationWindowsUpdates.ReadWrite.All pour utiliser les requêtes de cet article. Pour activer l’autorisation :

    1. Sélectionnez l’onglet Modifier les autorisations dans Graph Explorer.
    2. Dans la boîte de dialogue Autorisations, sélectionnez l’autorisation WindowsUpdates.ReadWrite.All , puis sélectionnez Consentement. Vous devrez peut-être vous reconnecter pour accorder votre consentement. Capture d’écran de l’onglet Modifier les autorisations dans Graph Explorer
  3. Pour effectuer des demandes :

    1. Sélectionnez GET, POST, PUT, PATCH ou DELETE dans la liste déroulante de la méthode HTTP.
    2. Entrez la demande dans le champ URL. La version est renseignée automatiquement en fonction de l’URL.
    3. Si vous devez modifier le corps de la demande, modifiez l’onglet Corps de la demande .
    4. Sélectionnez le bouton Exécuter la requête . Les résultats s’affichent dans la fenêtre Réponse .

    Astuce

    Lorsque vous passez en revue la documentation Microsoft Graph, vous pouvez remarquer que des exemples de requêtes répertorient content-type: application/jsongénéralement . content-type En règle générale, la spécification n’est pas obligatoire pour graph Explorer, mais vous pouvez l’ajouter à la requête en sélectionnant l’onglet En-têtes et en ajoutant au content-type champ En-têtes de la demande comme clé et application/jsoncomme valeur.

Exécuter des requêtes pour identifier les appareils

Utilisez le type de ressource d’appareil pour rechercher les clients à inscrire dans Windows Autopatch. Modifiez les paramètres de requête en fonction de vos besoins spécifiques. Pour plus d’informations, consultez Utiliser des paramètres de requête.

  • Affiche l’ID d’appareil AzureAD et le nom de tous les appareils :

    GET https://graph.microsoft.com/v1.0/devices?$select=deviceid,displayName
    
  • Affiche l’ID d’appareil AzureAD et le nom des appareils dont le nom commence par Test:

    GET https://graph.microsoft.com/v1.0/devices?$filter=startswith(displayName,'Test')&$select=deviceid,displayName
    

Ajouter un en-tête de requête pour les requêtes avancées

Pour les requêtes suivantes, définissez l’en-tête ConsistencyLevel sur eventual. Pour plus d’informations sur les paramètres de requête avancés, consultez Fonctionnalités de requête avancées sur Microsoft Entra objets d’annuaire.

  1. Dans Graph Explorer, sélectionnez l’onglet En-têtes de requête.

  2. Pour Type clé dans ConsistencyLevel et pour Valeur, tapez eventual.

  3. Sélectionnez le bouton Ajouter . Lorsque vous avez terminé, supprimez l’en-tête de requête en sélectionnant l’icône de corbeille.

    Capture d’écran de l’onglet En-têtes de requête dans Graph Explorer

  • Affichez le nom et la version du système d’exploitation pour l’appareil qui a 01234567-89ab-cdef-0123-456789abcdef comme ID d’appareil AzureAD :

    GET https://graph.microsoft.com/v1.0/devices?$search="deviceid:01234567-89ab-cdef-0123-456789abcdef"&$select=displayName,operatingSystemVersion
    
  • Pour rechercher les appareils qui ne sont probablement pas des machines virtuelles, filtrez les appareils qui n’ont pas de machine virtuelle répertoriée comme modèle, mais dont le fabricant est répertorié. Affichez l’ID, le nom et la version du système d’exploitationAzureAD pour chaque appareil :

    GET https://graph.microsoft.com/v1.0/devices?$filter=model ne 'virtual machine' and NOT(manufacturer eq null)&$count=true&$select=deviceid,displayName,operatingSystemVersion
    

Astuce

Les requêtes utilisant le type de ressource d’appareil ont généralement à la fois un id et un deviceid:

  • deviceid est l’ID d’appareil Microsoft Entra et sera utilisé dans cet article.
    • Plus loin dans cet article, il deviceid sera utilisé en tant que id lorsque vous effectuez certaines demandes, telles que l’ajout d’un appareil à une audience de déploiement.
  • Le id du type de ressource d’appareil est généralement l’ID d’objet Microsoft Entra, qui ne sera pas utilisé dans cet article.

Répertorier les entrées de catalogue pour les mises à jour accélérées

Chaque mise à jour est associée à une entrée de catalogue unique. Vous pouvez interroger le catalogue pour rechercher les mises à jour qui peuvent être accélérées. Le id retourné est l’ID de catalogue et est utilisé pour créer un déploiement. La requête suivante répertorie toutes les mises à jour de sécurité et de qualité non liées à la sécurité qui peuvent être déployées en tant que mises à jour accélérées par Windows Autopatch. L’utilisation $top=2 de et le classement par ReleaseDateTimeshows affichent les mises à jour les plus récentes qui peuvent être déployées comme accélérées.

GET https://graph.microsoft.com/beta/admin/windows/updates/catalog/entries?$filter=isof('microsoft.graph.windowsUpdates.qualityUpdateCatalogEntry') and microsoft.graph.windowsUpdates.qualityUpdateCatalogEntry/isExpeditable eq true&$orderby=releaseDateTime desc&$top=2

La réponse tronquée suivante affiche un ID de catalogue de pour la mise à jour de e317aa8a0455ca604de95329b524ec921ca57f2e6ed3ff88aac757a7468998a508/08/2023 - 2023.08 B SecurityUpdate for Windows 10 and later sécurité :

{
    "@odata.context": "https://graph.microsoft.com/beta/$metadata#admin/windows/updates/catalog/entries",
    "value": [
        {
            "@odata.type": "#microsoft.graph.windowsUpdates.qualityUpdateCatalogEntry",
            "id": "e317aa8a0455ca604de95329b524ec921ca57f2e6ed3ff88aac757a7468998a5",
            "displayName": "08/08/2023 - 2023.08 B SecurityUpdate for Windows 10 and later",
            "deployableUntilDateTime": null,
            "releaseDateTime": "2023-08-08T00:00:00Z",
            "isExpeditable": true,
            "qualityUpdateClassification": "security",
            "catalogName": "2023-08 Cumulative Update for Windows 10 and later",
            "shortName": "2023.08 B",
            "qualityUpdateCadence": "monthly",
            "cveSeverityInformation": {
                "maxSeverity": "critical",
                "maxBaseScore": 9.8,
                "exploitedCves@odata.context": "https://graph.microsoft.com/$metadata#admin/windows/updates/catalog/entries('e317aa8a0455ca604de95329b524ec921ca57f2e6ed3ff88aac757a7468998a5')/microsoft.graph.windowsUpdates.qualityUpdateCatalogEntry/cveSeverityInformation/exploitedCves",
                "exploitedCves": [
                    {
                        "number": "ADV230003",
                        "url": "https://msrc.microsoft.com/update-guide/vulnerability/ADV230003"
                    },
                    {
                        "number": "CVE-2023-38180",
                        "url": "https://msrc.microsoft.com/update-guide/vulnerability/CVE-2023-38180"
                    }
                ]
            }
        }
    ]
}

Windows Autopatch peut afficher plus d’informations sur les mises à jour publiées à partir de janvier 2023. L’utilisation de la révision de produit vous donne des informations supplémentaires sur les mises à jour, telles que les numéros de la base de connaissances et le MajorVersion.MinorVersion.BuildNumber.UpdateBuildRevision. Windows 10 et 11 partagent les mêmes versions principales et mineures, mais ont des numéros de build différents.

Utilisez ce qui suit pour afficher les informations de révision du produit pour la mise à jour qualité la plus récente :

GET https://graph.microsoft.com/beta/admin/windows/updates/catalog/entries?$expand=microsoft.graph.windowsUpdates.qualityUpdateCatalogEntry/productRevisions&$orderby=releaseDateTime desc&$top=1

La réponse tronquée suivante affiche des informations sur KB5029244 pour Windows 10, version 22H2 et KB5029263 pour Windows 11, version 22H2 :

{
    "@odata.context": "https://graph.microsoft.com/beta/$metadata#admin/windows/updates/catalog/entries(microsoft.graph.windowsUpdates.qualityUpdateCatalogEntry/productRevisions())",
    "value": [
        {
            "@odata.type": "#microsoft.graph.windowsUpdates.qualityUpdateCatalogEntry",
            "id": "e317aa8a0455ca604de95329b524ec921ca57f2e6ed3ff88aac757a7468998a5",
            "displayName": "08/08/2023 - 2023.08 B SecurityUpdate for Windows 10 and later",
            "deployableUntilDateTime": null,
            "releaseDateTime": "2023-08-08T00:00:00Z",
            "isExpeditable": true,
            "qualityUpdateClassification": "security",
            "catalogName": "2023-08 Cumulative Update for Windows 10 and later",
            "shortName": "2023.08 B",
            "qualityUpdateCadence": "monthly",
            "cveSeverityInformation": {
                "maxSeverity": "critical",
                "maxBaseScore": 9.8,
                "exploitedCves@odata.context": "https://graph.microsoft.com/beta/$metadata#admin/windows/updates/catalog/entries('e317aa8a0455ca604de95329b524ec921ca57f2e6ed3ff88aac757a7468998a5')/microsoft.graph.windowsUpdates.qualityUpdateCatalogEntry/cveSeverityInformation/exploitedCves",
                "exploitedCves": [
                    {
                        "number": "ADV230003",
                        "url": "https://msrc.microsoft.com/update-guide/vulnerability/ADV230003"
                    },
                    {
                        "number": "CVE-2023-38180",
                        "url": "https://msrc.microsoft.com/update-guide/vulnerability/CVE-2023-38180"
                    }
                ]
            },
            "productRevisions@odata.context": "https://graph.microsoft.com/beta/$metadata#admin/windows/updates/catalog/entries('e317aa8a0455ca604de95329b524ec921ca57f2e6ed3ff88aac757a7468998a5')/microsoft.graph.windowsUpdates.qualityUpdateCatalogEntry/microsoft.graph.windowsUpdates.qualityUpdateCatalogEntry/productRevisions",
            "productRevisions": [
                {
                    "id": "10.0.19045.3324",
                    "displayName": "Windows 10, version 22H2, build 19045.3324",
                    "releaseDateTime": "2023-08-08T00:00:00Z",
                    "version": "22H2",
                    "product": "Windows 10",
                    "osBuild": {
                        "majorVersion": 10,
                        "minorVersion": 0,
                        "buildNumber": 19045,
                        "updateBuildRevision": 3324
                    },
                    "knowledgeBaseArticle@odata.context": "https://graph.microsoft.com/beta/$metadata#admin/windows/updates/catalog/entries('e317aa8a0455ca604de95329b524ec921ca57f2e6ed3ff88aac757a7468998a5')/microsoft.graph.windowsUpdates.qualityUpdateCatalogEntry/microsoft.graph.windowsUpdates.qualityUpdateCatalogEntry/productRevisions('10.0.19045.3324')/knowledgeBaseArticle/$entity",
                    "knowledgeBaseArticle": {
                        "id": "KB5029244",
                        "url": "https://support.microsoft.com/help/5029244"
                    }
                },
                {
                    "id": "10.0.22621.2134",
                    "displayName": "Windows 11, version 22H2, build 22621.2134",
                    "releaseDateTime": "2023-08-08T00:00:00Z",
                    "version": "22H2",
                    "product": "Windows 11",
                    "osBuild": {
                        "majorVersion": 10,
                        "minorVersion": 0,
                        "buildNumber": 22621,
                        "updateBuildRevision": 2134
                    },
                    "knowledgeBaseArticle@odata.context": "https://graph.microsoft.com/beta/$metadata#admin/windows/updates/catalog/entries('e317aa8a0455ca604de95329b524ec921ca57f2e6ed3ff88aac757a7468998a5')/microsoft.graph.windowsUpdates.qualityUpdateCatalogEntry/microsoft.graph.windowsUpdates.qualityUpdateCatalogEntry/productRevisions('10.0.22621.2134')/knowledgeBaseArticle/$entity",
                    "knowledgeBaseArticle": {
                        "id": "KB5029263",
                        "url": "https://support.microsoft.com/help/5029263"
                    }
                },

Créer un déploiement

Lors de la création d’un déploiement, plusieurs options sont disponibles pour définir le comportement du déploiement. L’exemple suivant crée un déploiement pour la 08/08/2023 - 2023.08 B SecurityUpdate for Windows 10 and later mise à jour de sécurité avec l’ID e317aa8a0455ca604de95329b524ec921ca57f2e6ed3ff88aac757a7468998a5d’entrée de catalogue et définit les expedite options de déploiement et userExperience dans le corps de la requête.

POST https://graph.microsoft.com/beta/admin/windows/updates/deployments
content-type: application/json

{
    "@odata.type": "#microsoft.graph.windowsUpdates.deployment",
    "content": {
        "@odata.type": "#microsoft.graph.windowsUpdates.catalogContent",
        "catalogEntry": {
            "@odata.type": "#microsoft.graph.windowsUpdates.qualityUpdateCatalogEntry",
            "id": "e317aa8a0455ca604de95329b524ec921ca57f2e6ed3ff88aac757a7468998a5"
        }
    },
    "settings": {
        "@odata.type": "microsoft.graph.windowsUpdates.deploymentSettings",
        "expedite": {
            "isExpedited": true
        },
        "userExperience": {
            "daysUntilForcedReboot": 2
        }
    }
}

La requête retourne un code de réponse 201 Created et un objet de déploiement dans le corps de la réponse pour le déploiement nouvellement créé, qui inclut :

  • ID de910e12-3456-7890-abcd-ef1234567890de déploiement du déploiement nouvellement créé.
  • ID d’audienced39ad1ce-0123-4567-89ab-cdef01234567 de l’audience de déploiement nouvellement créée.
{
    "@odata.context": "https://graph.microsoft.com/beta/$metadata#admin/windows/updates/deployments/$entity",
    "id": "de910e12-3456-7890-abcd-ef1234567890",
    "createdDateTime": "2024-01-30T19:43:37.1672634Z",
    "lastModifiedDateTime": "2024-01-30T19:43:37.1672644Z",
    "state": {
        "effectiveValue": "offering",
        "requestedValue": "none",
        "reasons": []
    },
    "content": {
        "@odata.type": "#microsoft.graph.windowsUpdates.catalogContent",
        "catalogEntry@odata.context": "https://graph.microsoft.com/beta/$metadata#admin/windows/updates/deployments('073fb534-5cdd-4326-8aa2-a4d29037b60f')/content/microsoft.graph.windowsUpdates.catalogContent/catalogEntry/$entity",
        "catalogEntry": {
            "@odata.type": "#microsoft.graph.windowsUpdates.qualityUpdateCatalogEntry",
            "id": "e317aa8a0455ca604de95329b524ec921ca57f2e6ed3ff88aac757a7468998a5",
            "displayName": null,
            "deployableUntilDateTime": null,
            "releaseDateTime": "2023-08-08T00:00:00Z",
            "isExpeditable": false,
            "qualityUpdateClassification": "security",
            "catalogName": null,
            "shortName": null,
            "qualityUpdateCadence": "monthly",
            "cveSeverityInformation": null
        }
    },
    "settings": {
        "schedule": null,
        "monitoring": null,
        "contentApplicability": null,
        "userExperience": {
            "daysUntilForcedReboot": 2,
            "offerAsOptional": null
        },
        "expedite": {
            "isExpedited": true,
            "isReadinessTest": false
        }
    },
    "audience@odata.context": "https://graph.microsoft.com/beta/$metadata#admin/windows/updates/deployments('de910e12-3456-7890-abcd-ef1234567890')/audience/$entity",
    "audience": {
        "id": "d39ad1ce-0123-4567-89ab-cdef01234567",
        "applicableContent": []
    }
}

Ajouter des membres à l’audience de déploiement

L’ID d’audience, d39ad1ce-0123-4567-89ab-cdef01234567, a été créé lors de la création du déploiement. L’ID d’audience est utilisé pour ajouter des membres à l’audience de déploiement. Une fois l’audience de déploiement mise à jour, Windows Update commence à proposer la mise à jour aux appareils en fonction des paramètres de déploiement. Tant que le déploiement existe et que l’appareil se trouve dans l’audience, la mise à jour est accélérée.

L’exemple suivant ajoute deux appareils à l’audience de déploiement à l’aide de la Microsoft Entra ID pour chaque appareil :

POST https://graph.microsoft.com/beta/admin/windows/updates/deploymentAudiences/d39ad1ce-0123-4567-89ab-cdef01234567/updateAudience
content-type: application/json

{
  "addMembers": [
    {
      "@odata.type": "#microsoft.graph.windowsUpdates.azureADDevice",
      "id": "01234567-89ab-cdef-0123-456789abcdef"
    },
    {
      "@odata.type": "#microsoft.graph.windowsUpdates.azureADDevice",
      "id": "01234567-89ab-cdef-0123-456789abcde0"
    }
  ]
}

Pour vérifier que les appareils ont été ajoutés à l’audience, exécutez la requête suivante à l’aide de l’ID d’audience de d39ad1ce-0123-4567-89ab-cdef01234567:

GET https://graph.microsoft.com/beta/admin/windows/updates/deploymentAudiences/d39ad1ce-0123-4567-89ab-cdef01234567/members

Supprimer un déploiement

Pour arrêter un déploiement accéléré, supprimez le déploiement. La suppression du déploiement empêche l’offre de contenu aux appareils s’ils ne l’ont pas déjà reçu. Pour reprendre l’offre du contenu, une nouvelle approbation doit être créée.

L’exemple suivant supprime le déploiement avec l’ID de déploiement :de910e12-3456-7890-abcd-ef1234567890

DELETE https://graph.microsoft.com/beta/admin/windows/updates/deployments/de910e12-3456-7890-abcd-ef1234567890

Test de préparation pour l’accélération des mises à jour

Vous pouvez vérifier la préparation des clients à recevoir des mises à jour accélérées à l’aide de isReadinessTest. Créez un déploiement qui spécifie qu’il s’agit d’un test de préparation d’accélération, puis ajoutez des membres à l’audience de déploiement. Le service case activée pour voir si les clients remplissent les conditions préalables pour accélérer les mises à jour. Les résultats du test sont affichés dans le classeur rapports Windows Update pour les entreprises. Sous l’onglet Mises à jour de qualité, sélectionnez la vignette Accélérer status, qui ouvre un menu volant avec un onglet Préparation avec les résultats du test de préparation.

POST https://graph.microsoft.com/beta/admin/windows/updates/deployments
content-type: application/json

{
    "@odata.type": "#microsoft.graph.windowsUpdates.deployment",
    "content": {
        "@odata.type": "#microsoft.graph.windowsUpdates.catalogContent",
        "catalogEntry": {
            "@odata.type": "#microsoft.graph.windowsUpdates.qualityUpdateCatalogEntry",
            "id": "317aa8a0455ca604de95329b524ec921ca57f2e6ed3ff88aac757a7468998a5"
        }
    },
    "settings": {
        "@odata.type": "microsoft.graph.windowsUpdates.deploymentSettings",
        "expedite": {
            "isExpedited": true,
            "isReadinessTest": true
        }
    }
}

La réponse tronquée affiche que isReadinessTest est défini sur true et vous donne un DeploymentID de de910e12-3456-7890-abcd-ef1234567890. Vous pouvez ensuite ajouter des membres à l’audience de déploiement pour que le service case activée que les appareils répondent aux conditions préalables, puis passer en revue les résultats dans le classeur rapports Windows Update for Business.

        "expedite": {
            "isExpedited": true,
            "isReadinessTest": true
        }
    },
    "audience@odata.context": "https://graph.microsoft.com/beta/$metadata#admin/windows/updates/deployments('6a6c03b5-008e-4b4d-8acd-48144208f179_Readiness')/audience/$entity",
    "audience": {
        "id": "de910e12-3456-7890-abcd-ef1234567890",
        "applicableContent": []
    }

Emplacement du journal des outils d’intégrité de mise à jour

Les outils d’intégrité de mise à jour sont utilisés lorsque vous déployez des mises à jour accélérées. Dans certains cas, vous pouvez consulter les journaux des outils d’intégrité de mise à jour.

Emplacement du journal : %ProgramFiles%\Microsoft Update Health Tools\Logs

Pour plus d’informations, consultez Résolution des problèmes liés aux mises à jour accélérées.