Todos los proyectos

Informe de uso de licencias: una cifra por país, una evidencia por asiento

El problema
Licencias asignadas durante años y nunca revisadas; nadie sabía quién seguía usando qué.
Qué construí
Un informe mensual por país con un veredicto y su evidencia en cada asiento.
Qué salió de ahí
Una lista de recuperación defendible y una respuesta permanente a «¿seguimos necesitando todo esto?».
Flujo del informe de licenciasLicencias asignadasInformes de usoa veces cifradosInicios de sesiónTelemetría de equiposapps de escritorioCruce por asientoColumna UsageSource: qué fuente lo decidióNivelesmantenerconfirmarrecuperarCSVpor paísCada asiento lleva su evidencia: qué fuente lo decidió y cuándo se usó por última vez.

Con las licencias pasa algo incómodo: el error nunca da la cara. Asignar una licencia es un clic. Recuperarla depende de que el offboarding funcione bien todas las veces, y el offboarding es justo el proceso donde siempre acaba habiendo un agujero. Alguien se va y la cuenta se queda. Las cuentas de servicio y los buzones genéricos no pasaron por el procedimiento en su día. A alguien le dieron un asiento para un proyecto que terminó hace dos años.

Nada de eso salta como un error, salta en la factura.

Antes de escribir la primera consulta, parte el parque en dos

Lo primero que conviene hacer es separar las licencias en dos grupos, porque no se parecen en nada a la hora de retirarlas.

Las licencias de tipo add-on (Copilot, Power BI Pro, Visio, Project, Planner) son la mitad fácil. Dentro no vive nada. Si nadie ha abierto la aplicación en meses, se retira el asiento y lo peor que puede pasar es un ticket que resuelves en un minuto.

Las licencias base, las que arrastran buzón y OneDrive, son otra cosa. Quitar una no es retirar una función: es decidir qué pasa con los datos de una persona. Eso pide una decisión escrita antes que un script. Las opciones realistas, cada una con un coste escondido detrás:

  • Archivar, o convertir en buzón compartido más un sitio de SharePoint. Sencillo, pero el almacenamiento solo crece, y el almacenamiento es dinero con retardo.

  • Exportar un PST, guardarlo en un sitio acorde a la sensibilidad del contenido y borrarlo cumplido un plazo definido.

  • Llevarlo a almacenamiento frío, mucho más barato que dejarlo en la plataforma de productividad, dejar en su lugar un fichero de texto con el puntero y borrar la copia si nadie la reclama dentro de una ventana fijada.

Aquí no hay respuesta universalmente correcta. Lo que importa es que la organización tenga escrito cuál aplica y cuándo. Antes de la primera recuperación, no después de la primera queja.

El informe

Con eso resuelto, el entregable fue un informe. El centro de administración ya enseña el uso por producto, así que los datos en bruto nunca faltaron; lo que no tenía nadie era el cruce con los titulares de licencia, por país y con un veredicto en cada fila: un CSV por país, una fila por asiento, mantener, confirmar con el responsable o recuperar. A los responsables de IT de cada país llevaban años preguntándoles quién seguía necesitando qué sin darles datos con los que contestar. Ahora reciben un fichero y una cifra.

La primera ejecución devolvió un resultado limpio y alarmante: alrededor del 40% de los asientos de Visio y Planner no registraban ningún uso. Recuperarlos habría sido el ahorro más fácil del año.

También estaba mal, y averiguar por qué es lo que convirtió el informe en algo fiable.

Dos huecos que llevan a la misma conclusión falsa

Los datos de uso salían de los informes de uso de Microsoft 365 en Graph, cruzados con los titulares de licencia por su UPN. Dentro de esa frase hay dos suposiciones, y ninguna estaba comprobada. Las dos merecen una revisión en tu propio tenant, hoy.

Visio y Project de escritorio, en aquel momento, no dejaban ningún rastro que yo encontrara en la nube. Los datos de uso que tenía solo hablaban de la versión web. Quien abre Visio en su portátil cada mañana, con un fichero de una carpeta de red, no aparecía por ningún lado. Para esos dos productos, «sin uso» y «no hay forma de medirlo» eran indistinguibles. Entonces.

Los dos huecos fallan igual: un vacío silencioso que se interpreta como un hallazgo negativo.

El arreglo es una columna, no un parche

En vez de reparar el cruce y seguir adelante, el informe ganó una columna: UsageSource. Cada fila dice ahora de dónde sale su veredicto: informe de uso, registro de inicios de sesión, telemetría del equipo o no recogido. Quien lo lee puede distinguir un asiento confirmado como inactivo de un asiento que todavía nadie puede ver.

Para Visio y Project de escritorio no tenía API, así que escribí una: un script pequeño, de solo lectura, ejecutado en el equipo a través de las remediaciones de Intune, que leía la lista de ficheros recientes de Office y el contador de ejecuciones de Windows y devolvía una fecha de último uso por aplicación. La cobertura de equipos se informaba al lado, porque un equipo al que el script no llegó tampoco demuestra nada.

Ese script está retirado, y así debe ser. La plataforma se movió: los informes Visio Activity y Project Activity del centro de administración traen una columna Desktop por usuario (si esa persona abrió la aplicación de escritorio al menos una vez en la ventana, de 7 a 180 días) y un filtro que separa los asientos de Visio Plan 1 y 2 del uso «seeded» que incluyen algunas suscripciones. Eso es más preciso que cualquier cosa leída de un portátil. Dos cosas que conviene saber antes de fiarse: el informe de Visio puede tardar hasta 72 horas en aparecer, y los nombres de usuario vienen ocultos por defecto en los informes de uso, que es el primer hueco de este artículo otra vez. Escribir el script fue lo correcto cuando no había respuesta; mantenerlo cuando ya la había, no lo habría sido.

Lo que quedó en pie

Con el cruce reparado y la señal de escritorio incorporada, la parte recuperable se quedó en aproximadamente un tercio de los asientos add-on: unos pocos en cuentas inactivas, la mayoría con la aplicación confirmada sin uso y el resto pendientes de que su responsable lo confirme. Una proporción parecida sigue marcada como uso desconocido, y el informe lo dice en lugar de colarla en una columna o en la otra.

Es menos que la primera cifra, y se sostiene delante de la persona a la que le retiras la licencia. La primera no.

El informe se genera cada mes, así que «¿seguimos necesitando todo esto?» tiene una respuesta permanente en vez de una carrera anual.

Todos los proyectos