Microsoft 365 app: personalizzazione e distribuzione centralizzata

La distribuzione del client di Microsoft 365 non è poi così complicata, dato che Microsoft mette a disposizione un veloce setup che permette di installare la suite in poco tempo. Tuttavia questo scenario si può presentare perfetto per realtà non gestite, o con poche utenze, mentre in casi dove si trovano più computer, o dove si vuole un livello di attenzione e personalizzazione maggiore, è caldamente consigliato fare uno step in avanti.

Microsoft Office è sempre stato un prodotto personalizzabile, attraverso il suo Office Customization Tool, ma rispetto al passato la versione 365 non prevede la possibilità di avere una ISO, perchè il setup dovrebbe essere sempre fatto con l’ultima versione. Il punto è: come faccio a distribuire il client di Microsoft 365, in modo centralizzato e come serve a me? E’ quello che andremo a vedere in questo articolo.

Office Customization Tool

Tutto parte dal Office Customization Tool, un sito web messo a disposizione da Microsoft che permette di creare un file .xml capace di personalizzare l’installazione di Microsoft 365.

Figura 1 – Office Customization Tool

Il portale è abbastanza facile da usare ma nasconde delle piccole insidie che è bene conoscere. Il primo passo da fare è scegliere l’architettura da installare, dove i 64bit sono lo standard di default e sempre da scegliere; tuttavia potrebbero esserci problemi con dei software obsoleti che utilizzano chiamate a DLL funzionanti solo a 32bit, motivo per cui avete la doppia scelta.

Figura 2 – Architettura

Versioni

Esistono 4 opzioni di installazione nel tool:

  • Microsoft 365 App for Enterprise
  • Microsoft 365 App for Business
  • Office 2019 Professional Plus
  • Office 2019 Standard

Da inizio 2020 Microsoft ha modificato il nome delle SKU cloud che una volta erano conosciute come Office 365 Enterprise e Business, ma il concetto non cambia. La versione Enterprise è utilizzabile solo dai piani Microsoft/Office 365 E (es. E3) mentre la versione Business funziona con i piani Microsoft/Office 365 Business (es. Business Premium). Il concetto di funzionamento è legato all’attivazione del prodotto, non all’accesso diretto ai servizi cloud.

Update Channel

Office 365 è un prodotto dinamico che punta ad aggiornarsi praticamente ogni giorno (per quanto riguarda i servizi cloud), ciò obbliga il client a stargli al passo in maniera rapida. Da questo punto di vista, un po’ come Windows 10, esistono diversi programmi di aggiornamento del client:

  • Current Channel: rilascio nuove features appena possibile e senza schedulazione
  • Current Channel (Preview): rilascio nuove features appena possibile ma con anticipo rispetto alla Current Channel
  • Monthly Enterprise Channel: rilascio nuove features una volta al mese con il patch Tuesday
  • Semi-Annual Enterprise Channel: rilascio nuove features ogni 6 mesi con il patch Tuesday

Tutto quello che invece riguarda la sicurezza del prodotto è sempre rilasciato mensilmente o non appena disponibile, a seconda della criticità del problema.

Sicuramente la Monthly Enterprise Channel è quella più indicata, perchè permette di ridurre il carico di rete e di eventuali problemi che possono venire fuori con gli aggiornamenti.

La modalità Current Channel è perfetta invece per chi deve testare il prodotto prima di andare al rilascio oppure per chi vuole avere sempre l’ultima versione installata (condizione a volte necessaria per usare certe funzioni in Preview). Ovviamente la modalità di canale usato varia il supporto del prodotto, perchè se la Monthly Enterprise Channel è supportata per 2 mesi, la Semi-Annual Enterprise Channel ha un supporto di 14 mesi e questo fattore, per certe realtà, non è da poco.

Installazione & Upgrade

Anche in questo caso ci sono 3 opzioni da scegliere:

  • Recupero direttamente dal cloud
  • Percorso locale o di rete
  • Microsoft Endpoint Configuration Manager

La prima opzione è perfetta in due scenari: piccole realtà dove si preferisce il download diretto, oppure quando si utilizza Microsoft Intune per distribuire la suite ai propri device via cloud. Chiaramente la velocità di connettività, ed il numero di device, la fa da padrona perchè possono impattare sull’esperienza finale di setup.

L’opzione del percorso locale, quella che stiamo vedendo in questo articolo, aumenta la velocità di installazione ma obbliga l’admin IT a tenere aggiornati i bit di setup per non trovarsi con una build troppo vecchia (specie se le installazioni vengono fatte non con tanta frequenza).

Figura 3 – Path Installazione

Per quanto riguarda la parte di upgrade, il consiglio è di lasciarlo gestire al cloud, perchè anche in questo caso si potrebbe generare un effort. Tuttavia, è possibile impostare il file .xml per poter gestire gli aggiornamenti da percorso di rete.

Questa regola non è valida con Microsoft Endpoint Configuration Manager (aka System Center Configuration Manager), perchè esiste un sistema di upgrade automatico gestito direttamente dalla piattaforma.

Il file .xml può essere configurato per disinstallare versioni precedenti di Office, ma anche di saltare da una build a 32bit verso una a 64bit; questa condizione è valida solo con le build 1902 di Office 365, o superiori.

Chiusura Task

Il resto delle operazioni è abbastanza facile, perchè si parla di approvare in automatico la EULA, impostare la tipologia di licenza (utente, device) ed il nome dell’organizzazione.

Una volta concluse le operazioni, si potrà esportare il file ma non prima di scegliere il formato di default da assegnare ai file Office – solitamente Open Office XML Formats.

Figura 4 – Default File Format

Questo è un esempio di file .xml configurato con quanto affrontato fino ad ora. L’installazione è basata sulla Enteprise, togliendo software non più utili, che prevede l’attivazione automatica con licenza assegnata per utente.

<Configuration ID=”61361a1f-b918-4a24-b891-24bb7414712e”>
<Add OfficeClientEdition=”64″ Channel=”Current” SourcePath=”\\myserver.domain.local\software\O365″ AllowCdnFallback=”TRUE”>
<Product ID=”O365ProPlusRetail”>
<Language ID=”it-it” />
<ExcludeApp ID=”Access” />
<ExcludeApp ID=”Groove” />
<ExcludeApp ID=”Lync” />
<ExcludeApp ID=”OneDrive” />
<ExcludeApp ID=”Publisher” />
</Product>
</Add>
<Property Name=”SharedComputerLicensing” Value=”0″ />
<Property Name=”PinIconsToTaskbar” Value=”FALSE” />
<Property Name=”SCLCacheOverride” Value=”0″ />
<Property Name=”AUTOACTIVATE” Value=”0″ />
<Property Name=”FORCEAPPSHUTDOWN” Value=”TRUE” />
<Property Name=”DeviceBasedLicensing” Value=”0″ />
<Updates Enabled=”TRUE” />
<AppSettings>
<Setup Name=”Company” Value=”Inside Tech Lab” />
<User Key=”software\microsoft\office\16.0\excel\options” Name=”defaultformat” Value=”51″ Type=”REG_DWORD” App=”excel16″ Id=”L_SaveExcelfilesas” />
<User Key=”software\microsoft\office\16.0\powerpoint\options” Name=”defaultformat” Value=”27″ Type=”REG_DWORD” App=”ppt16″ Id=”L_SavePowerPointfilesas” />
<User Key=”software\microsoft\office\16.0\word\options” Name=”defaultformat” Value=”” Type=”REG_SZ” App=”word16″ Id=”L_SaveWordfilesas” />
</AppSettings>
<Display Level=”Full” AcceptEULA=”TRUE” />
<Logging Level=”Off” />
</Configuration>

Prima di esportare il file, scaricare l’Office Deployment Tool che ci servirà per fare il download e l’installazione dei bit.

Figura 5 – Export File
Figura 6 – Office Deployment Tool

Download e Setup

Il download può essere fatto da qualsiasi postazione, ma prima è necessario estrarre il Deployment Tool che andrà a decomprimere il file setup.exe; copiate nella stessa directory il file .xml esportato in precedenza ed eseguite questo comando: setup.exe /download.

Il setup invece va eseguito su ogni singola macchina, usando il comando setup.exe /configure configuration.xml – o come avete chiamato il file – che farà partire l’installazione.

Automazione

Escludendo Microsoft Intune e Endpoint Manager, l’installazione può essere automatizzata con uno script in PowerShell, tipo questo:

$ResultADR = Get-ItemProperty HKLM:\Software\Microsoft\Windows\CurrentVersion\Uninstall\* | where {$_.DisplayName -like “Microsoft 365 for enterprise*”}
$TempOfficePath = “\\myserver.domain.local\software\O365\”
$SetupFile = “setup.exe”
$ConfigFile = “configuration.xml”
If ($ResultADR -eq $null) {
(Start-Process -FilePath $TempOfficePath$SetupFile -ArgumentList “/configure $TempOfficePath$ConfigFile” -Wait -Passthru).ExitCode
}

Conclusioni

Installare il client di Microsoft 365 in modo personalizzato è sempre la cosa migliore, perchè permette di adattarlo al proprio modello aziendale. Come visto in precendeza, ci sono un paio di accortezze su cui fare attenzione ma per il resto, il tempo per fare tutto quanto è di circa 10 minuti…..installazione inclusa!