Salta al contenuto
Guida

10 script PowerShell per gestire le licenze Microsoft 365 (toolkit)

Un toolkit di 10 script PowerShell pronti per gestire e ottimizzare le licenze Microsoft 365: report utenti, licenze inutilizzate, costo per utente, assegnazioni dirette vs gruppo. Download gratuito.

SynSphere Italia 7 min di lettura
Toolkit di 10 script PowerShell per gestire e ottimizzare le licenze Microsoft 365

Le licenze Microsoft 365 sono una delle voci di spesa IT più facili da sprecare: utenti che non accedono da mesi ma hanno ancora una licenza, shared mailbox licenziate inutilmente, licenze assegnate due volte (diretta + da gruppo). Con PowerShell si fa luce in pochi minuti. Abbiamo raccolto 10 script pronti in un toolkit scaricabile.

🛠️ Scarica il toolkit: Toolkit PowerShell licenze Microsoft 365 (10 script) — gratuito, codice originale SynSphere, archivio ZIP. Questo articolo spiega cosa fa ciascuno script.

Prerequisiti (validi per tutti gli script)

  • PowerShell 5.1+ o PowerShell 7.
  • Microsoft Graph PowerShell SDK: Install-Module Microsoft.Graph -Scope CurrentUser.
  • Per lo script sulle shared mailbox serve anche ExchangeOnlineManagement.
  • Account amministratore con autenticazione moderna (MFA): niente password negli script.

Ogni script è autonomo, parametrico e commentato; le operazioni di scrittura supportano -WhatIf per simulare prima di applicare.

📊 Reporting e inventario

  1. Report licenze (01) — tutti gli utenti licenziati con gli SKU assegnati e lo stato dell’account. Il punto di partenza per qualsiasi analisi.
  2. Report SKU sottoscritti (02) — unità acquistate, consumate e in warning (utile per capacity planning e per individuare le sottoscrizioni vicine al rinnovo).
  3. Gruppi con licenze (05) — mappa il group-based licensing del tenant: quali gruppi assegnano quali licenze e a quanti membri.
  4. Path di assegnazione (06) — per ogni licenza dice se è diretta o ereditata da un gruppo. Fondamentale prima di rimuovere una licenza (quella ereditata si toglie dal gruppo, non dall’utente).
  5. Report group-based (07) — solo le assegnazioni da gruppo, con il gruppo di origine ed eventuali errori di assegnazione.

💰 Ottimizzazione dei costi

  1. Licenze inutilizzate (09) — utenti licenziati che non accedono da più di N giorni (o mai): candidati a recupero licenza. È il modo più rapido per tagliare spesa senza impatto.
  2. Shared mailbox licenziate (04) — le caselle condivise di norma non richiedono licenza: questo script trova quelle licenziate per errore (spesa pura da recuperare).
  3. Licenze sovrapposte (08) — individua (e, su richiesta, rimuove con -WhatIf) le licenze dirette ridondanti quando lo stesso SKU è già garantito da un gruppo.
  4. Report di spesa per utente (10) — calcola il costo mensile per utente in base a un listino configurabile: utile per capire dove vanno i soldi delle licenze.

⚙️ Gestione e assegnazione

  1. Gestione licenze multi-azione (03) — report, assegnazione e rimozione licenze, anche in massa da CSV. Con -WhatIf per simulare le operazioni prima di applicarle.

Da dove partire

Un percorso pratico di ottimizzazione in 3 passi:

  1. Fotografa la situazione con il report licenze (01) e il report di spesa (10).
  2. Trova gli sprechi: licenze inutilizzate (09), shared mailbox licenziate (04), sovrapposizioni (08).
  3. Agisci: riassegna o rimuovi con lo script di gestione (03), sempre testando con -WhatIf.

È la stessa logica con cui evitiamo i costi nascosti di Microsoft 365: non serve comprare meno, serve pagare solo ciò che si usa.

Quando conviene un supporto

Su tenant grandi o con group-based licensing complesso, l’ottimizzazione licenze è un’attività ricorrente che fa parte di un servizio gestito. SynSphere offre assessment licenze e assistenza Microsoft 365 gestita, e usa questi stessi script (e altri) nelle sue automazioni PowerShell per Microsoft 365.

Scarica il toolkit e, se vuoi un assessment dei tuoi costi licenze, parla con un nostro consulente.

Prodotti SynSphere correlati

I prodotti del catalogo SynSphere richiamati in questo articolo.