Controles de programación para actualizaciones rápidas de calidad de Windows
En este artículo, hará lo siguiente:
Requisitos previos
Se deben cumplir todos los requisitos previos de Windows Autopatch , incluida la garantía de que Update Health Tools está instalado en los clientes.
- Update Health Tools se instala a partir de KB4023057. Para confirmar la presencia de Update Health Tools en un dispositivo, use uno de los métodos siguientes:
- Ejecución de una prueba de preparación para actualizaciones rápidas
- Busque la carpeta C:\Archivos de programa\Microsoft Update Health Tools o revise Agregar quitar programas para Microsoft Update Health Tools.
- Script de PowerShell de ejemplo para comprobar la instalación de herramientas:
Get-CimInstance -ClassName Win32_Product \| Where-Object {$_.Name -match "Microsoft Update Health Tools"}
Permisos
Los permisos siguientes son necesarios para las consultas enumeradas en este artículo:
- WindowsUpdates.ReadWrite.All para las operaciones de autopatch de Windows .
- Al menos el permiso Device.Read.All para mostrar la información del dispositivo .
Algunos roles, como el administrador de implementación de Windows Update, ya tienen estos permisos.
Puntos de conexión necesarios
Debe tener acceso a los siguientes puntos de conexión:
puntos de conexión de Windows Update
- *.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
Graph API puntos de conexión:
- devicelistenerprod.microsoft.com
- login.windows.net
- payloadprod*.blob.core.windows.net
Abrir el Explorador de Graph
En este artículo, usará el Explorador de Graph para realizar solicitudes a las API de Microsoft Graph para recuperar, agregar, eliminar y actualizar datos. Graph Explorer es una herramienta para desarrolladores que le permite obtener información sobre las API de Microsoft Graph. Para obtener más información sobre el uso del Explorador de Graph, consulte Introducción al Explorador de Graph.
Advertencia
- Las solicitudes enumeradas en este artículo requieren iniciar sesión con una cuenta de Microsoft 365. Si es necesario, hay disponible una evaluación gratuita de un mes para Microsoft 365 Empresa Premium.
- Se recomienda encarecidamente usar un inquilino de prueba para aprender y comprobar el proceso de implementación. Graph Explorer está diseñado para ser una herramienta de aprendizaje. Asegúrese de comprender la concesión de consentimiento y el tipo de consentimiento para el Explorador de Graph antes de continuar.
Desde un explorador, vaya al Explorador de Graph e inicie sesión con una cuenta de usuario Microsoft Entra.
Es posible que tenga que habilitar el
WindowsUpdates.ReadWrite.All
permiso para usar las consultas de este artículo. Para habilitar el permiso:Para realizar solicitudes:
- Seleccione GET, POST, PUT, PATCH o DELETE en la lista desplegable del método HTTP.
- Escriba la solicitud en el campo URL. La versión se rellenará automáticamente en función de la dirección URL.
- Si necesita modificar el cuerpo de la solicitud, edite la pestaña Cuerpo de la solicitud .
- Seleccione el botón Ejecutar consulta . Los resultados aparecerán en la ventana Respuesta .
Sugerencia
Al revisar la documentación de Microsoft Graph, es posible que observe que las solicitudes de ejemplo suelen enumerar
content-type: application/json
. La especificacióncontent-type
normalmente no es necesaria para el Explorador de Graph, pero puede agregarla a la solicitud seleccionando la pestaña Encabezados y agregando alcontent-type
campo Encabezados de solicitud como clave yapplication/json
como valor.
Ejecución de consultas para identificar dispositivos
Use el tipo de recurso de dispositivo para buscar clientes que se inscriban en Windows Autopatch. Cambie los parámetros de consulta para que se ajusten a sus necesidades específicas. Para obtener más información, consulte Uso de parámetros de consulta.
Muestra el identificador de dispositivo de AzureAD y el nombre de todos los dispositivos:
GET https://graph.microsoft.com/v1.0/devices?$select=deviceid,displayName
Muestra el id. de dispositivo de AzureAD y el nombre de los dispositivos que tienen un nombre a partir de
Test
:GET https://graph.microsoft.com/v1.0/devices?$filter=startswith(displayName,'Test')&$select=deviceid,displayName
Adición de un encabezado de solicitud para consultas avanzadas
Para las siguientes solicitudes, establezca el encabezado eventual
ConsistencyLevel en . Para obtener más información sobre los parámetros de consulta avanzados, consulte Funcionalidades avanzadas de consulta en Microsoft Entra objetos de directorio.
En el Explorador de Graph, seleccione la pestaña Encabezados de solicitud .
En Tipo de clave en
ConsistencyLevel
y en Valor, escribaeventual
.Seleccione el botón Agregar . Cuando haya terminado, quite el encabezado de solicitud seleccionando el icono de papelera.
Muestre la versión del sistema operativo y el nombre del dispositivo que tiene
01234567-89ab-cdef-0123-456789abcdef
como identificador de dispositivo de AzureAD:GET https://graph.microsoft.com/v1.0/devices?$search="deviceid:01234567-89ab-cdef-0123-456789abcdef"&$select=displayName,operatingSystemVersion
Para buscar dispositivos que probablemente no sean máquinas virtuales, filtre por los dispositivos que no tengan máquinas virtuales enumeradas como modelo, pero que tengan un fabricante en la lista. Muestre el identificador de dispositivo de AzureAD, el nombre y la versión del sistema operativo para cada 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
Sugerencia
Las solicitudes que usan el tipo de recurso de dispositivo suelen tener un id
y un deviceid
:
-
deviceid
es el Microsoft Entra id. de dispositivo y se usará en este artículo.- Más adelante en este artículo, se
deviceid
usará como cuandoid
realice determinadas solicitudes, como agregar un dispositivo a una audiencia de implementación.
- Más adelante en este artículo, se
- El
id
del tipo de recurso de dispositivo suele ser el Microsoft Entra id. de objeto, que no se usará en este artículo.
Enumerar entradas de catálogo para actualizaciones rápidas
Cada actualización está asociada a una entrada de catálogo única. Puede consultar el catálogo para buscar actualizaciones que se puedan acelerar. El id
valor devuelto es el identificador de catálogo y se usa para crear una implementación. En la consulta siguiente se enumeran todas las actualizaciones de calidad de seguridad y de no seguridad que windows Autopatch puede implementar como actualizaciones rápidas. Al usar $top=2
y ordenar, ReleaseDateTimeshows
se muestran las actualizaciones más recientes que se pueden implementar como rápidas.
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 siguiente respuesta truncada muestra un identificador de catálogo de para la 08/08/2023 - 2023.08 B SecurityUpdate for Windows 10 and later
actualización de e317aa8a0455ca604de95329b524ec921ca57f2e6ed3ff88aac757a7468998a5
seguridad:
{
"@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 puede mostrar más información sobre las actualizaciones publicadas en enero de 2023 o después de . El uso de la revisión del producto proporciona información adicional sobre las actualizaciones, como los números de KB y MajorVersion.MinorVersion.BuildNumber.UpdateBuildRevision
. Windows 10 y 11 comparten las mismas versiones principales y secundarias, pero tienen números de compilación diferentes.
Use lo siguiente para mostrar la información de revisión del producto de la actualización de calidad más reciente:
GET https://graph.microsoft.com/beta/admin/windows/updates/catalog/entries?$expand=microsoft.graph.windowsUpdates.qualityUpdateCatalogEntry/productRevisions&$orderby=releaseDateTime desc&$top=1
La siguiente respuesta truncada muestra información sobre KB5029244 para Windows 10, versión 22H2 y KB5029263 para Windows 11, versión 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"
}
},
Creación de una implementación
Al crear una implementación, hay varias opciones disponibles para definir cómo se comporta la implementación. En el ejemplo siguiente se crea una implementación para la actualización de seguridad con el 08/08/2023 - 2023.08 B SecurityUpdate for Windows 10 and later
identificador e317aa8a0455ca604de95329b524ec921ca57f2e6ed3ff88aac757a7468998a5
de entrada de catálogo y se definen las expedite
opciones de implementación y userExperience
en el cuerpo de la solicitud.
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 solicitud devuelve un código de respuesta 201 Created y un objeto de implementación en el cuerpo de la respuesta para la implementación recién creada, que incluye:
- Identificador de implementación
de910e12-3456-7890-abcd-ef1234567890
de la implementación recién creada. - Identificador de audiencia
d39ad1ce-0123-4567-89ab-cdef01234567
de la audiencia de implementación recién creada.
{
"@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": []
}
}
Agregar miembros a la audiencia de implementación
El identificador de audiencia, d39ad1ce-0123-4567-89ab-cdef01234567
, se creó cuando se creó la implementación. El identificador de audiencia se usa para agregar miembros a la audiencia de implementación. Una vez actualizada la audiencia de implementación, Windows Update comienza a ofrecer la actualización a los dispositivos según la configuración de implementación. Siempre que exista la implementación y el dispositivo esté en la audiencia, la actualización se acelerará.
En el ejemplo siguiente se agregan dos dispositivos a la audiencia de implementación mediante el Microsoft Entra ID para cada 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"
}
]
}
Para comprobar que los dispositivos se agregaron a la audiencia, ejecute la siguiente consulta con el identificador de audiencia de d39ad1ce-0123-4567-89ab-cdef01234567
:
GET https://graph.microsoft.com/beta/admin/windows/updates/deploymentAudiences/d39ad1ce-0123-4567-89ab-cdef01234567/members
Eliminación de una implementación
Para detener una implementación acelerada, elimine la implementación. La eliminación de la implementación impedirá que el contenido se ofrezca a los dispositivos si aún no lo han recibido. Para reanudar la oferta del contenido, deberá crearse una nueva aprobación.
En el ejemplo siguiente se elimina la implementación con un identificador de implementación de de910e12-3456-7890-abcd-ef1234567890
:
DELETE https://graph.microsoft.com/beta/admin/windows/updates/deployments/de910e12-3456-7890-abcd-ef1234567890
Prueba de preparación para acelerar las actualizaciones
Puede comprobar la preparación de los clientes para recibir actualizaciones rápidas mediante isReadinessTest. Cree una implementación que especifique que se trata de una prueba de preparación rápida y, a continuación, agregue miembros a la audiencia de implementación. El servicio comprobará si los clientes cumplen los requisitos previos para acelerar las actualizaciones. Los resultados de la prueba se muestran en el libro de informes Windows Update para empresas. En la pestaña Actualizaciones de calidad , seleccione el icono Estado rápido , que abre un control flotante con una pestaña Preparación con los resultados de las pruebas de preparación.
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 respuesta truncada muestra que isReadinessTest está establecido en true
y proporciona un DeploymentID de de910e12-3456-7890-abcd-ef1234567890
. Después, puede agregar miembros a la audiencia de implementación para que el servicio compruebe que los dispositivos cumplen los requisitos previos y, a continuación, revise los resultados en el libro de informes Windows Update para empresas.
"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": []
}
Ubicación del registro de Update Health Tools
Las herramientas de mantenimiento de actualización se usan al implementar actualizaciones rápidas. En algunos casos, es posible que desee revisar los registros de Update Health Tools.
Ubicación del registro: %ProgramFiles%\Microsoft Update Health Tools\Logs
- Los registros están en
.etl
formato.- Microsoft ofrece PerfView como descarga en GitHub, que muestra
.etl
los archivos.
- Microsoft ofrece PerfView como descarga en GitHub, que muestra
Para obtener más información, consulte Solución de problemas de actualizaciones rápidas.