Tras una discusión con Vincent y Yohannès, aquí os dejamos un pequeño POC para continuar con la gestión de las llaves de Office.
El problema:
En nuestro centro disponemos de licencias por volumen de Office 2016 pero disponemos de una o más claves por sitio.
La administración con la herramienta VAMT de Microsoft es un poco tediosa (hay que iniciar manualmente el inventario en VAMT y los datos solo se cargan si las estaciones de trabajo correspondientes están conectadas)
Packet Wapt, un posible enfoque
Creé un paquete llamado ef-check-office2016-licence.
Aquí está el archivo setup.py:
Código: Seleccionar todo
# -*- coding: utf-8 -*-
from setuphelpers import *
pgmsoffice = programfiles
def install():
return 0
def audit():
pathosppvbs = makepath(pgmsoffice,'Microsoft Office','Office16','OSPP.VBS')
dstatus = run('cscript "%s" /dstatus' % pathosppvbs)
if '---NOTIFICATIONS---' in dstatus:
print("GVLK")
return "WARNING"
elif '---LICENSED---' in dstatus:
line = dstatus.split("\n")
for i in line:
if ('Last 5 characters of installed product key: ') in i:
key = i.split("Last 5 characters of installed product key: ")
print(key[1][0:5])
return "OK"
if __name__ == '__main__':
audit()Creé una tabla "oficina" en la base de datos WAPT y la llené con mis claves: Y en la sección de informes ingresé la siguiente consulta:
Código: Seleccionar todo
SELECT hosts.computer_name,
hostpackagesstatus.last_audit_status AS licence_status,
SUBSTRING(hostpackagesstatus.last_audit_output from 0 for 6) AS partial_key,
office.fullkey,
office.site,
office.description,
office.max_allowed
FROM hosts
LEFT JOIN hostpackagesstatus on hosts.uuid = hostpackagesstatus.host_id AND hostpackagesstatus.package = 'ef-check-office2016-licence'
LEFT JOIN office on office.id LIKE SUBSTRING(hostpackagesstatus.last_audit_output from 0 for 6)
ORDER BY office.site;También existirá la posibilidad de realizar otras solicitudes útiles como:
- todas las publicaciones en advertencia (GVLK)
- o incluso el método "agrupar por" para verificar que no se excedan las cuotas de licencias
Espero que esta "Prueba de Concepto" te inspire.
Buen día
Jordi
