Rapida pillola per chi ha bisogno di assegnare una nuova licenza di Office 365 (o uno dei prodotti aggiuntivi, come Project, Visio o Power BI, per esempio) e vuole farlo via PowerShell anziché passare decine di minuti attaccato alla GUI di Microsoft.
Il metodo non va assolutamente a intaccare la licenza (o le licenze, se più di una) assegnata in precedenza all’utente. È un qualcosa che può tornarti comodo nel caso tu debba fornire Project (faccio solo un esempio) a chi ha già un piano E3 di Office 365, si rivela per lo più fondamentale nel caso in cui gli utenti ai quali dare nuovi servizi inizino a diventare di più (ti direi dai 10 in su). In quest’ultimo caso, il metodo più valido rimane –secondo me– PowerShell in coppia con un semplicissimo file CSV.
Che tu abbia necessità di assegnare una licenza a singolo utente o a molti di questi, ricordati che da PowerShell potrai sempre vedere il set di prodotti (quindi licenze) a tua disposizione (Sku Id) tramite il comando:
Get-MsolAccountSku
Il risultato è generalmente costituito da una stringa per tipo di licenza, la quale viene mostrata come <nometenant>:PRODOTTO
(esempio: contoso:ENTERPRISEPACK
corrisponderà alle licenze E3 del tenant Contoso). Se vuoi farti un’idea di quante possibili licenze esistono, puoi dare un’occhiata a questo articolo sul blog di Trey Carlee (Microsoft): blogs.technet.microsoft.com/treycarlee/2014/12/09/powershell-licensing-skus-in-office-365.
Assegnazione di licenza al singolo utente
Partendo dalla doverosa premessa fatta subito sopra il titolo di questo paragrafo, se vuoi assegnare una licenza a un singolo utente, ti basterà utilizzare il comando:
Set-MsolUserLicense -UserPrincipalName mario.rossi@contoso.com -AddLicenses "contoso:ENTERPRISEPACK"
Stringa all’interno della quale cambierai ovviamente mario.rossi@contoso.com
con l’utente esistente sul tuo tenant Office 365 al quale dare la nuova licenza, e "contoso:ENTERPRISEPACK"
con la giusta combinazione corrispondente al pacchetto che vuoi aggiungere a Mario Rossi. In pratica, secondo l’esempio poco sopra, Mario Rossi ha appena ottenuto una nuova licenza Office 365 E3 che gli permette di accedere al mondo Office online e offline, con possibilità di installare le ormai famose 5 copie di Office 2016 per altrettanti PC privati o di lavoro.
Assegnazione di licenza a più utenti
Che è la parte forse per te più interessante. È la medesima mossa fatta nel paragrafo precedente, ma che grazie all’aiuto di un file CSV e della funzione di importazione di questi via PowerShell, ti permette di lanciare quel comando su più utenti, in un solo colpo.
Prepara il file CSV (anche con un editor di testo, come Notepad++ o Atom) all’interno del quale scriverai “utenti” in prima riga, poi un singolo indirizzo di posta elettronica per riga partendo da quella successiva, fino a inserire tutti quelli corrispondenti agli utenti che vuoi modificare.
Un esempio pratico?
utenti mario.rossi@contoso.com mirco.bianchi@contoso.com rossella.verdi@contoso.com gianluca.celesti@contoso.com ernesto.gialli@contoso.com
A questo punto, salva il file CSV in una posizione comoda per il recupero via PowerShell (facciamo C:\temp\lista.csv
?), quindi lascia che questa faccia il lavoro sporco per te:
Import-CSV C:\temp\lista.csv | ForEach-Object {Set-MsolUserLicense -UserPrincipalName $_.utenti -AddLicenses "contoso:ENTERPRISEPACK"}
Ogni indirizzo specificato (del file CSV) subirà la modifica, quindi l’assegnazione di una nuova licenza che andrà ad aggiungersi a quelle precedentemente possedute. Inutile forse dire che per rimuovere contestualmente una licenza magari non più utilizzata potrai aggiungere (prima della parentesi graffa di chiusura) un -RemoveLicenses "contoso:ENTEPRISEPACK"
(per fare un esempio). Il comando è sempre personalizzabile secondo le tue esigenze.
Buon lavoro.
Fonti che puoi consultare:
- docs.microsoft.com/it-it/office365/enterprise/powershell/view-licenses-and-services-with-office-365-powershell
- docs.microsoft.com/it-it/office365/enterprise/powershell/assign-licenses-to-user-accounts-with-office-365-powershell
L'articolo potrebbe non essere aggiornato
Questo post è stato scritto più di 5 mesi fa, potrebbe non essere aggiornato. Per qualsiasi dubbio ti invito a lasciare un commento per chiedere ulteriori informazioni! :-)