Implantar uma atualização de driver usando o Windows Autopatch

Com o Windows Autopatch, você pode implantar atualizações do Windows em dispositivos em um locatário do Microsoft Entra. Hoje, o Windows Autopatch oferece suporte à implantação de atualizações de recursos do Windows 10 e do Windows 11, atualizações de qualidade de hotpatch, atualizações de qualidade aceleradas e atualizações de driver. Este tópico se concentra no gerenciamento da implantação de atualizações de driver. Para obter informações sobre como implantar atualizações de recursos, consulte Implantar uma atualização de recursos. Para obter informações sobre como implantar atualizações de qualidade de hotpatch, consulte Implantar uma atualização de qualidade de hotpatch. Para obter informações sobre como implantar atualizações de qualidade aceleradas, consulte Implantar uma atualização de qualidade acelerada.

Quando os dispositivos registrados no Windows Autopatch verificam o Windows Update, são coletados os resultados da verificação dos drivers aplicáveis que são melhores do que os que estão instalados atualmente no dispositivo. O Windows Autopatch os cataloga para serem pesquisados, aprovados e agendados para implantação. Somente o conteúdo aprovado é oferecido aos dispositivos, desde que ele permaneça registrado no gerenciamento de driver.

Pré-requisitos

Os dispositivos devem atender aos pré-requisitos do Windows Autopatch.

Etapa 1: Registrar dispositivos no gerenciamento de driver

Quando você registra um dispositivo no gerenciamento de driver, o Windows Autopatch se torna a autoridade para atualizações de driver provenientes do Windows Windows Update. Como resultado, os dispositivos não recebem drivers do Windows Update até que uma implantação seja criada ou sejam adicionados a uma política de atualização de driver com aprovações. Para registrar um dispositivo, você deve fornecer uma ID do azureADDevice .

Solicitação

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

Resposta

HTTP/1.1 202 Accepted

Etapa 2: Criar um público-alvo de implantação para receber atualizações

Depois que os dispositivos são registrados e gerenciados pelo Windows Autopatch, eles podem ser colocados em audiências para uma implantação. Os públicos-alvo de implantação especificam o conteúdo a ser implantado, como e quando implantar o conteúdo e os dispositivos de destino.

O exemplo a seguir mostra como criar uma audiência de implantação. Os dispositivos de destino são especificados na próxima etapa.

Solicitação

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

Resposta

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

Etapa 3: atribuir dispositivos à audiência de implantação

Depois que um público-alvo de implantação é criado, você pode atribuir dispositivos ao público-alvo de implantação. Quando o público-alvo da implantação é atualizado com êxito, o Windows Autopatch começa a coletar os resultados de verificação do Windows Update para criar um catálogo de drivers aplicáveis a serem pesquisados, aprovados e agendados para implantação.

O exemplo a seguir mostra como adicionar dispositivos Microsoft Entra como membros do público-alvo de implantação.

Solicitação

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

Resposta

HTTP/1.1 202 Accepted

Etapa 4: Criar uma política de atualização

Depois que os dispositivos são adicionados a um público-alvo de implantação, você pode criar uma política de atualização que rege a implantação de conteúdo para os públicos-alvo de implantação associados. A política de atualização é um modelo de alto nível para que o conteúdo possa ser implantado de maneira semelhante para um determinado público-alvo sem precisar criar, gerenciar e relacionar implantações individuais. O conteúdo é implantado nos dispositivos nas audiências associadas quando uma aprovação de conteúdo é adicionada à política.

O exemplo a seguir mostra como criar uma política de atualização e atribuir uma audiência de implantação existente a ela.

Solicitação

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

Resposta

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

Etapa 5: obter o inventário de atualizações de driver

Depois que os dispositivos são adicionados a um público-alvo de implantação, você pode procurar e examinar um catálogo de conteúdo aplicável para drivers e firmware melhores do que o que está atualmente instalado na coleção de dispositivos em um público-alvo de implantação. O conteúdo aplicável também fornece uma lista de dispositivos correspondentes de dispositivos do Microsoft Entra aplicáveis a cada driver.

O exemplo a seguir mostra como obter o inventário de atualizações de driver disponíveis para dispositivos em um público-alvo de implantação existente. Observação: cada página de resultados retorna até 100 entradas de catálogo. Use o token de continuação retornado para ver mais resultados.

Solicitação

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

Resposta

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

Devido ao grande tamanho das matchedDevice listas, o comportamento de retorno padrão quando um chamador expande a propriedade de navegação matchedDevices é uma coleção vazia e um token de continuação para obter a primeira página de resultados. O exemplo a seguir mostra como obter a lista de matchedDevices para um determinado catalogEntry. Observação: cada página de resultados retorna até 100 dispositivos. Use o token de continuação retornado para ver mais resultados.

Solicitação

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

Resposta

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

Etapa 5: Criar aprovação de motorista

As implantações para atualizações de driver são criadas e impostas em uma política por meio de alterações de conformidade. As aprovações de conteúdo para atualizações de driver são adicionadas a uma política especificando a entrada de catálogo associada a uma atualização de driver específica. O conteúdo só será entregue a dispositivos nas audiências de implantação associadas à política de atualização quando aprovado.

O exemplo a seguir mostra como adicionar uma aprovação de conteúdo a uma política existente.

Solicitação

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

Resposta

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": {
            "startDateTime": "2023-02-14T01:00:00Z",
            "gradualRollout": {
                "@odata.type": "#microsoft.graph.windowsUpdates.rateDrivenRolloutSettings",
                "durationBetweenOffers": "P1D",
                "devicesPerOffer": 0
            }
        },
        "monitoring": null,
        "contentApplicability": null,
        "userExperience": null,
        "expedite": null
    }
}

Durante uma implantação de driver

Enquanto uma implantação está em andamento, você pode atualizar os membros do público, bem como impedir que o conteúdo seja oferecido aos dispositivos se eles ainda não o tiverem recebido, definindo a propriedade isRevoked como true. Essa é a maneira auditável de pausar uma implantação e preencherá automaticamente as propriedades revokedBy e revokedDateTime . Para voltar a oferecer o conteúdo, crie uma nova aprovação.

Solicitação

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
}

Resposta

HTTP/1.1 204 No Content

Cancelar o registro no gerenciamento de driver

Quando você cancela o registro de um dispositivo do gerenciamento para uma determinada categoria de atualização, o dispositivo não é mais gerenciado pelo Windows Autopatch e pode começar a receber outras atualizações do Windows Update com base em sua configuração de política. O dispositivo não registrado é removido de todas as audiências e implantações que contêm conteúdo para determinada categoria de atualização. O dispositivo permanece registrado no Windows Autopatch e ainda está registrado e recebendo conteúdo para outras categorias de atualização, se aplicável.

Solicitação

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

Resposta

HTTP/1.1 202 Accepted