Un inventario de dispositivos fiable: un endpoint, varios objetos, tres automatizaciones
- El problema
- Las reinstalaciones y reinscripciones dejan objetos duplicados y obsoletos; el inventario se separa de la realidad.
- Qué construí
- Tres automatizaciones: deduplicar por número de serie, limpieza de obsoletos con copia de BitLocker y alineación del usuario principal.
- Qué salió de ahí
- Un endpoint, un objeto vigente y el usuario correcto encima: un inventario sobre el que se pueden tomar decisiones.
Hay una pregunta que sale siempre en gestión de dispositivos, sobre todo cuando se espera que Intune alimente un inventario fiable: ¿por qué lo que enseña la consola nunca acaba de coincidir con lo que hay encima de las mesas? Microsoft va integrando piezas de la respuesta de forma nativa, poco a poco, pero buena parte sigue teniendo que automatizarla quien lleva la plataforma.
El punto de partida es un concepto con el que conviene ser pedante. Un dispositivo (un endpoint; de aquí en adelante, un objeto) puede existir en más de un sitio a la vez, y esos son objetos distintos:
- Registrado en Entra ID. Alguien usó su cuenta corporativa en ese equipo para llegar a un recurso de empresa: inició sesión en Outlook, en OneDrive, en cualquier aplicación de Microsoft 365. Solo con eso ya existe un objeto en el directorio. Normalmente no es un dispositivo gestionado.
- En Entra ID e inscrito en Intune. Ahora hay dos objetos que se sincronizan entre sí, pero siguen siendo dos objetos con dos trabajos distintos. Entra ID guarda la identidad: ahí es donde el objeto lleva sus pertenencias a grupos. Intune guarda la gestión: ahí es donde el objeto vive el día a día y donde los grupos se asignan a políticas, scripts y aplicaciones.
Ten presente esa separación y los modos de fallo se vuelven predecibles.
El caso que rompe el inventario
Reinstala Windows en una máquina a mano. Los objetos de Entra ID y de Intune sobreviven los dos a la reinstalación. Si el equipo se vuelve a inscribir, los objetos viejos deberían borrarse de los dos sitios, y normalmente no lo hace nadie.
Peor todavía: si el dispositivo perdió la confianza con Intune por lo que sea y se reinscribe, Intune crea un objeto nuevo. A partir de ahí, el mismo endpoint físico aparece dos o tres veces en la consola. Todos los recuentos están mal, todos los porcentajes de cumplimiento salen diluidos por fantasmas, y cualquier asignación dirigida a «todos los dispositivos» está apuntando a máquinas que ya no existen.
Tres automatizaciones que lo mantienen honesto
Qué guardar antes de borrar
Dos de las tres automatizaciones borran cosas, y en un directorio los borrados no tienen vuelta atrás. Mi recomendación es acompañarlas de una capa de almacenamiento pequeña (una Logic App o un runbook de Azure Automation escribiendo en blob storage) que guarde tres cosas:
Las claves de recuperación de BitLocker de todos los dispositivos afectados, si no están ya custodiadas en otro sitio. Esto es el prerrequisito de la limpieza de obsoletos, no un extra opcional.
Un registro mínimo de cada dispositivo eliminado: usuario si lo hay, número de serie si lo hay, cuándo y por qué. No el objeto entero: solo lo justo para poder responder meses después a «¿qué pasó con esta máquina?» sin guardar datos personales que ya no necesitas.
Una exportación periódica de la configuración de Intune: políticas, perfiles y asignaciones. Para copia de seguridad y restauración, el módulo de la comunidad que usé en producción durante años es IntuneBackupAndRestore, de John Seerden; que quede dicho. Sus dependencias se han retirado después, así que comprueba que sigue funcionando con tus versiones de módulos antes de fiarte. La idea es la misma en cualquier caso: una exportación fechada, programada y guardada fuera del tenant.
Esta última es la que se gana el sueldo el día que pregunta un auditor. «¿Puede enseñarme la configuración tal y como estaba, y demostrarme que podría recuperarla?» es pregunta estándar en una auditoría de seguridad (me la hicieron en una certificación ISO 27001 en la que participé) y una exportación fechada en blob storage es la diferencia entre una respuesta y una acción pendiente.
El usuario principal importa más de lo que parece: de él dependen el autoservicio del Portal de empresa, la resolución de políticas basadas en usuario y todos los informes que responden a «¿de quién es esta máquina?». Un inventario con el usuario principal mal puesto es un inventario incapaz de responder a la pregunta que más veces le van a hacer.