Condividi tramite


Distribuire aggiornamenti accelerati con il servizio di distribuzione Windows Update for Business

In questo articolo si vedrà come:

Prerequisiti

Tutti i prerequisiti per il servizio di distribuzione Windows Update for Business devono essere soddisfatti, inclusa la garanzia che gli strumenti di integrità degli aggiornamenti siano installati nei client.

  • Gli strumenti di integrità degli aggiornamenti vengono installati a partire da KB4023057. Per confermare la presenza degli strumenti di integrità degli aggiornamenti in un dispositivo, usare uno dei metodi seguenti:
    • Eseguire un test di idoneità per gli aggiornamenti accelerati
    • Cercare la cartella C:\Programmi\Microsoft Update Health Tools o vedere Aggiungere programmi di rimozione per Microsoft Update Health Tools.
    • Script di PowerShell di esempio per verificare l'installazione degli strumenti: Get-CimInstance -ClassName Win32_Product \| Where-Object {$_.Name -match "Microsoft Update Health Tools"}

Autorizzazioni

Per le query elencate in questo articolo sono necessarie le autorizzazioni seguenti:

Alcuni ruoli, ad esempio l'amministratore della distribuzione Windows Update, dispongono già di queste autorizzazioni.

Aprire Graph Explorer

Per questo articolo si userà Graph Explorer per inviare richieste alle API Microsoft Graph per recuperare, aggiungere, eliminare e aggiornare i dati. Graph Explorer è uno strumento per sviluppatori che consente di ottenere informazioni sulle API Microsoft Graph. Per altre informazioni sull'uso di Graph Explorer, vedere Introduzione a Graph Explorer.

Warning

  • Le richieste elencate in questo articolo richiedono l'accesso con un account Microsoft 365. Se necessario, è disponibile una versione di valutazione gratuita di un mese per Microsoft 365 Business Premium.
  • È consigliabile usare un tenant di test per apprendere e verificare il processo di distribuzione. Graph Explorer è progettato per essere uno strumento di apprendimento. Assicurarsi di comprendere la concessione del consenso e il tipo di consenso per Graph Explorer prima di procedere.
  1. Da un browser passare a Graph Explorer e accedere usando un account utente Microsoft Entra.

  2. Potrebbe essere necessario abilitare l'autorizzazione per l'uso WindowsUpdates.ReadWrite.All delle query in questo articolo. Per abilitare l'autorizzazione:

    1. Selezionare la scheda Modifica autorizzazioni in Esplora grafici.

    2. Nella finestra di dialogo autorizzazioni selezionare l'autorizzazione WindowsUpdates.ReadWrite.All e quindi selezionare Consenso. Potrebbe essere necessario accedere di nuovo per concedere il consenso.

      Screenshot della scheda Modifica autorizzazioni in Graph Explorer

  3. Per effettuare richieste:

    1. Selezionare GET, POST, PUT, PATCH o DELETE dall'elenco a discesa per il metodo HTTP.
    2. Immettere la richiesta nel campo URL. La versione verrà popolata automaticamente in base all'URL.
    3. Se è necessario modificare il corpo della richiesta, modificare la scheda Corpo della richiesta .
    4. Selezionare il pulsante Esegui query . I risultati verranno visualizzati nella finestra Risposta .

    Suggerimento

    Quando si esamina la documentazione di Microsoft Graph, è possibile notare che le richieste di esempio in genere elencano content-type: application/json. La specifica content-type in genere non è necessaria per Graph Explorer, ma è possibile aggiungerla alla richiesta selezionando la scheda Intestazioni e aggiungendo al content-type campo Intestazioni richiesta come chiave e application/json come valore.

Eseguire query per identificare i dispositivi

Usare il tipo di risorsa del dispositivo per trovare i client da registrare nel servizio di distribuzione. Modificare i parametri di query in base alle esigenze specifiche. Per altre informazioni, vedere Usare i parametri di query.

  • Visualizza l'ID dispositivo di AzureAD e il nome di tutti i dispositivi:

    GET https://graph.microsoft.com/v1.0/devices?$select=deviceid,displayName
    
  • Visualizza l'ID dispositivo e il nome di AzureAD per i dispositivi con un nome che inizia con Test:

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

Aggiungere un'intestazione della richiesta per le query avanzate

Per le richieste successive, impostare l'intestazione ConsistencyLevel su eventual. Per altre informazioni sui parametri di query avanzati, vedere Funzionalità di query avanzate sugli oggetti directory Microsoft Entra.

  1. In Esplora grafici selezionare la scheda Intestazioni richiesta .

  2. Per Tipo di chiave in ConsistencyLevel e per Valore, digitare eventual.

  3. Selezionare il pulsante Aggiungi . Al termine, rimuovere l'intestazione della richiesta selezionando l'icona del cestino.

    Screenshot della scheda intestazioni della richiesta in Graph Explorer

  • Visualizzare il nome e la versione del sistema operativo per il dispositivo che ha 01234567-89ab-cdef-0123-456789abcdef come ID dispositivo AzureAD:

    GET https://graph.microsoft.com/v1.0/devices?$search="deviceid:01234567-89ab-cdef-0123-456789abcdef"&$select=displayName,operatingSystemVersion
    
  • Per trovare i dispositivi che probabilmente non sono macchine virtuali, filtrare per i dispositivi che non hanno una macchina virtuale elencata come modello ma che hanno un produttore elencato. Visualizzare l'ID dispositivo, il nome e la versione del sistema operativodi AzureAD per ogni dispositivo:

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

Suggerimento

Le richieste che usano il tipo di risorsa del dispositivo includono in genere sia un oggetto id che un deviceidoggetto :

  • è deviceidl'ID dispositivo Microsoft Entra e verrà usato in questo articolo.
    • Più avanti in questo articolo, questo deviceid verrà usato come un id quando si effettuano determinate richieste, ad esempio l'aggiunta di un dispositivo a un gruppo di destinatari della distribuzione.
  • L'oggetto id del tipo di risorsa del dispositivo è in genere l'ID oggetto Microsoft Entra, che non verrà usato in questo articolo.

Elencare le voci del catalogo per gli aggiornamenti accelerati

Ogni aggiornamento è associato a una voce del catalogo univoca. È possibile eseguire query sul catalogo per trovare gli aggiornamenti che possono essere accelerati. L'oggetto id restituito è l'ID catalogo e viene usato per creare una distribuzione. La query seguente elenca tutti gli aggiornamenti qualitativi di sicurezza e non di sicurezza che possono essere distribuiti come aggiornamenti accelerati dal servizio di distribuzione. L'uso $top=2 e l'ordinamento di visualizza ReleaseDateTimeshows gli aggiornamenti più recenti che possono essere distribuiti come accelerati.

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 risposta troncata seguente visualizza un ID catalogo di per l'aggiornamento della e317aa8a0455ca604de95329b524ec921ca57f2e6ed3ff88aac757a7468998a508/08/2023 - 2023.08 B SecurityUpdate for Windows 10 and later sicurezza:

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

Il servizio di distribuzione può visualizzare altre informazioni sugli aggiornamenti rilasciati il o dopo gennaio 2023. L'uso della revisione del prodotto fornisce informazioni aggiuntive sugli aggiornamenti, ad esempio i numeri kb e .MajorVersion.MinorVersion.BuildNumber.UpdateBuildRevision Windows 10 e 11 condividono le stesse versioni principali e secondarie, ma hanno numeri di build diversi.

Usare quanto segue per visualizzare le informazioni sulla revisione del prodotto per l'aggiornamento qualitativo più recente:

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

La risposta troncata seguente visualizza informazioni sulle KB5029244 per Windows 10, versione 22H2 e KB5029263 per Windows 11 versione 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"
                    }
                },

Creare una distribuzione

Quando si crea una distribuzione, sono disponibili più opzioni per definire il comportamento della distribuzione. Nell'esempio seguente viene creata una distribuzione per l'aggiornamento della 08/08/2023 - 2023.08 B SecurityUpdate for Windows 10 and later sicurezza con l'ID e317aa8a0455ca604de95329b524ec921ca57f2e6ed3ff88aac757a7468998a5voce del catalogo e vengono definite le expedite opzioni di distribuzione e userExperience nel corpo della richiesta.

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 richiesta restituisce un codice di risposta 201 Created e un oggetto di distribuzione nel corpo della risposta per la distribuzione appena creata, che include:

  • ID de910e12-3456-7890-abcd-ef1234567890di distribuzione della distribuzione appena creata.
  • ID d39ad1ce-0123-4567-89ab-cdef01234567gruppo di destinatari del gruppo di destinatari appena creato.
{
    "@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": []
    }
}

Aggiungere membri al gruppo di destinatari della distribuzione

L'ID gruppo di destinatari, d39ad1ce-0123-4567-89ab-cdef01234567, è stato creato al momento della creazione della distribuzione. L'ID gruppo di destinatari viene usato per aggiungere membri al gruppo di destinatari della distribuzione. Dopo l'aggiornamento del gruppo di destinatari della distribuzione, Windows Update inizia a offrire l'aggiornamento ai dispositivi in base alle impostazioni di distribuzione. Finché la distribuzione esiste e il dispositivo è tra i destinatari, l'aggiornamento verrà accelerato.

L'esempio seguente aggiunge due dispositivi al gruppo di destinatari della distribuzione usando il Microsoft Entra ID per ogni dispositivo:

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

Per verificare che i dispositivi siano stati aggiunti al gruppo di destinatari, eseguire la query seguente usando l'ID gruppo di destinatari di d39ad1ce-0123-4567-89ab-cdef01234567:

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

Eliminare una distribuzione

Per arrestare una distribuzione accelerata, ELIMINARE la distribuzione. L'eliminazione della distribuzione impedirà che il contenuto venga offerto ai dispositivi se non lo hanno già ricevuto. Per riprendere l'offerta del contenuto, sarà necessario creare una nuova approvazione.

Nell'esempio seguente la distribuzione viene eliminata con un ID di distribuzione di de910e12-3456-7890-abcd-ef1234567890:

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

Test di idoneità per l'accelerazione degli aggiornamenti

È possibile verificare l'idoneità dei client a ricevere aggiornamenti accelerati usando isReadinessTest. Creare una distribuzione che specifica che si tratta di un test di preparazione rapida, quindi aggiungere membri al gruppo di destinatari della distribuzione. Il servizio verificherà se i client soddisfano i prerequisiti per l'accelerazione degli aggiornamenti. I risultati del test vengono visualizzati nella cartella di lavoro report Windows Update for Business. Nella scheda Aggiornamenti qualitativi selezionare il riquadro Stato di espedienza , che apre un riquadro a comparsa con una scheda Preparazione con i risultati del test di idoneità.

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 risposta troncata visualizza che isReadinessTest è impostato su true e fornisce un DEPLOYMENTID di de910e12-3456-7890-abcd-ef1234567890. È quindi possibile aggiungere membri al gruppo di destinatari della distribuzione per fare in modo che il servizio verifichi che i dispositivi soddisfino i preresquiti e quindi esaminare i risultati nella cartella di lavoro dei report 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": []
    }

Percorso del log per gli strumenti di integrità degli aggiornamenti

Gli strumenti di integrità degli aggiornamenti vengono usati quando si distribuiscono gli aggiornamenti accelerati. In alcuni casi, è possibile esaminare i log per gli strumenti di integrità degli aggiornamenti.

Percorso del log: %ProgramFiles%\Microsoft Update Health Tools\Logs

Per altre informazioni, vedere Risoluzione dei problemi relativi agli aggiornamenti accelerati.