Implementar uma atualização de controlador com o Windows Autopatch
Com o Windows Autopatch, pode implementar atualizações do Windows em dispositivos num inquilino Microsoft Entra. Atualmente, o Windows Autopatch suporta a implementação de atualizações de funcionalidades Windows 10 e Windows 11, atualizações de qualidade de acesso frequente, atualizações de qualidade aceleradas e atualizações de controlador. Este tópico centra-se na gestão da implementação de atualizações de controladores. Para obter informações sobre a implementação de atualizações de funcionalidades, veja Implementar uma atualização de funcionalidades. Para obter informações sobre como implementar atualizações de qualidade de acesso frequente, consulte Implementar uma atualização de qualidade de acesso frequente. Para obter informações sobre como implementar atualizações de qualidade aceleradas, veja Implementar uma atualização de qualidade acelerada.
Quando os dispositivos inscritos na análise de Correspondência Automática do Windows Windows Update, são recolhidos os resultados da análise dos controladores aplicáveis que são melhores do que os atualmente instalados no dispositivo. Em seguida, o Windows Autopatch cataloga-os para serem navegados, aprovados e agendados para implementação. Apenas o conteúdo aprovado é oferecido aos dispositivos, desde que permaneça inscrito na gestão de controladores.
Pré-requisitos
Os dispositivos têm de cumprir os pré-requisitos do Windows Autopatch.
Passo 1: Inscrever dispositivos na gestão de controladores
Quando inscreve um dispositivo na gestão de controladores, o Windows Autopatch torna-se a autoridade para atualizações de controladores provenientes de Windows Update. Como resultado, os dispositivos não recebem controladores de Windows Update até que seja criada uma implementação ou sejam adicionados a uma política de atualização de controladores com aprovações. Para inscrever um dispositivo, tem de fornecer um ID 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
Passo 2: Criar uma audiência de implementação para receber atualizações
Depois de os dispositivos serem inscritos e geridos pelo Windows Autopatch, podem ser colocados em audiências para uma implementação. As audiências de implementação especificam o conteúdo a implementar, como e quando implementar o conteúdo e os dispositivos visados.
O exemplo seguinte mostra como criar uma audiência de implementação. Os dispositivos visados são especificados no passo seguinte.
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": []
}
Passo 3: atribuir dispositivos à audiência de implementação
Após a criação de uma audiência de implementação , pode atribuir dispositivos à audiência de implementação. Quando a audiência de implementação é atualizada com êxito, o Windows Autopatch começa a recolher os resultados da análise de Windows Update para criar um catálogo de controladores aplicáveis para serem navegados, aprovados e agendados para implementação.
O exemplo seguinte mostra como adicionar Microsoft Entra dispositivos como membros da audiência de implementaçã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
Passo 4: Criar uma política de atualização
Depois de os dispositivos serem adicionados a uma audiência de implementação, pode criar uma política de atualização que regule a implementação de conteúdos para as audiências de implementação associadas. A política de atualização é um modelo de alto nível para que os conteúdos possam ser implementados de forma semelhante para uma determinada audiência sem ter de criar, gerir e relacionar implementações individuais. O conteúdo é implementado nos dispositivos nas audiências associadas quando é adicionada uma aprovação de conteúdo à política.
O exemplo seguinte mostra como criar uma política de atualização e atribuir uma audiência de implementação existente à mesma.
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
}
}
Passo 5: Obter o inventário de atualizações de controladores
Depois de os dispositivos serem adicionados a uma audiência de implementação, pode procurar e rever um catálogo de conteúdos aplicáveis para controladores e firmware que são melhores do que os atualmente instalados na coleção de dispositivos numa audiência de implementação. O conteúdo aplicável também fornece uma lista de dispositivos correspondentes de dispositivos Microsoft Entra que são aplicáveis a cada controlador.
O exemplo seguinte mostra como obter o inventário de atualizações de controladores disponíveis para dispositivos numa audiência de implementação existente. Nota: cada página de resultados devolve até 100 entradas de catálogo. Utilize o token de continuação devolvido 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 listas, o comportamento de matchedDevice
retorno predefinido quando um autor da chamada 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 seguinte mostra como obter a lista de dispositivos correspondentes para um determinado catalogEntry
.
Nota: cada página de resultados devolve até 100 dispositivos. Utilize o token de continuação devolvido 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}"
}
Passo 5: Criar aprovação do controlador
As implementações para atualizações de controladores são criadas e impostas numa política através de alterações de conformidade. As aprovações de conteúdo para atualizações de controladores são adicionadas a uma política ao especificar a entrada de catálogo associada a uma atualização de controlador específica. O conteúdo só será entregue aos dispositivos nas audiências de implementação associadas à política de atualização quando for aprovado.
O exemplo seguinte 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 a implementação de um controlador
Enquanto uma implementação estiver em curso, pode atualizar os membros da audiência, bem como impedir que os conteúdos sejam oferecidos aos dispositivos se ainda não o tiverem recebido, ao definir a propriedade isRevoked como true
. Esta é a forma auditável de colocar uma implementação em pausa e preencher automaticamente as propriedades revokedBy e revokedDateTime . Para retomar a oferta do 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
Anular a inscrição da gestão de controladores
Quando anula a inscrição de um dispositivo da gestão de uma determinada categoria de atualização, o dispositivo deixa de ser gerido pelo Windows Autopatch e pode começar a receber outras atualizações de Windows Update com base na respetiva configuração de política. O dispositivo não inscrito é removido de todas as audiências e implementações que contêm conteúdo para a categoria de atualização especificada. O dispositivo permanece registado no Windows Autopatch e ainda está inscrito e a receber 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