Il corso PowerShell per Microsoft 365 e Microsoft Graph fornisce le competenze necessarie per amministrare, interrogare e automatizzare i principali servizi cloud Microsoft attraverso PowerShell.
L’amministrazione di Microsoft 365 richiede sempre più spesso di operare contemporaneamente su utenti, gruppi, licenze, posta elettronica, Teams, SharePoint Online e servizi di identità. Le interfacce grafiche dei diversi portali amministrativi sono utili per le attività occasionali, ma diventano meno efficienti quando occorre applicare configurazioni a numerosi utenti, produrre report periodici o realizzare procedure ripetibili.
Microsoft Graph PowerShell consente di amministrare identità e risorse Microsoft 365 e di sviluppare automazioni su larga scala. Microsoft mette inoltre a disposizione moduli specifici per Exchange Online, Microsoft Teams e SharePoint Online.
Durante il corso i partecipanti imparano a installare e gestire i moduli necessari, connettersi in modo sicuro ai diversi servizi, identificare i cmdlet appropriati, amministrare utenti e gruppi, elaborare dati provenienti dal tenant e costruire script utilizzabili nelle attività operative quotidiane.
Una particolare attenzione viene dedicata a Microsoft Graph PowerShell SDK, destinato a rappresentare il principale strumento PowerShell per l’accesso programmabile ai dati e ai servizi Microsoft 365.
Il corso è rivolto a:
- amministratori Microsoft 365;
- amministratori di sistema;
- tecnici help desk di secondo livello;
- amministratori Microsoft Entra ID;
- amministratori Exchange Online e Microsoft Teams;
- consulenti IT;
- tecnici che devono automatizzare attività ripetitive sui tenant Microsoft 365;
- professionisti che gestiscono utenti, gruppi, licenze e servizi cloud Microsoft.
Al termine del corso i partecipanti saranno in grado di:
- comprendere l’architettura amministrativa di Microsoft 365;
- installare, aggiornare e utilizzare i principali moduli PowerShell;
- connettersi a Microsoft Graph e ai servizi Microsoft 365;
- comprendere la differenza tra autenticazione delegata e autenticazione applicativa;
- individuare i permessi Microsoft Graph necessari per ogni operazione;
- amministrare utenti, gruppi e appartenenze;
- gestire proprietà e assegnazioni delle licenze Microsoft 365;
- interrogare e amministrare Exchange Online;
- automatizzare alcune attività relative a Microsoft Teams;
- amministrare impostazioni essenziali di SharePoint Online;
- importare ed esportare dati in formato CSV e JSON;
- produrre report amministrativi;
- realizzare script riutilizzabili e procedure automatizzate;
- gestire errori, log e controlli di esecuzione;
- applicare principi di sicurezza e minimo privilegio agli script amministrativi.
1. PowerShell nell’amministrazione di Microsoft 365
- architettura generale di Microsoft 365;
- portali amministrativi e strumenti da riga di comando;
- quando utilizzare PowerShell;
- vantaggi dell’automazione amministrativa;
- panoramica dei principali workload Microsoft 365;
- relazione tra Microsoft 365, Microsoft Entra ID e Microsoft Graph;
- PowerShell 7 e compatibilità dei moduli;
- PowerShell Gallery;
- installazione, importazione e aggiornamento dei moduli;
- verifica delle versioni installate;
- gestione dei moduli e delle dipendenze.
2. Moduli PowerShell per Microsoft 365
Panoramica e utilizzo dei principali moduli:
- Microsoft Graph PowerShell SDK;
- Microsoft.Graph.Authentication;
- moduli Microsoft.Graph per utenti, gruppi, directory e dispositivi;
- ExchangeOnlineManagement;
- MicrosoftTeams;
- Microsoft.Online.SharePoint.PowerShell;
- differenze tra moduli specifici e Microsoft Graph;
- criteri per scegliere il modulo più appropriato;
- ricerca dei comandi e consultazione della guida;
- identificazione dei moduli richiesti da uno script.
3. Introduzione a Microsoft Graph PowerShell
- che cos’è Microsoft Graph;
- risorse, oggetti e relazioni;
- endpoint Microsoft Graph;
- API Microsoft Graph v1.0 e beta;
- struttura del Microsoft Graph PowerShell SDK;
- convenzioni dei cmdlet
Mg;
- installazione completa o selettiva del SDK;
- individuazione dei cmdlet disponibili;
- utilizzo di
Find-MgGraphCommand;
- individuazione delle autorizzazioni richieste;
- utilizzo di
Find-MgGraphPermission;
- consultazione della documentazione dei cmdlet;
- proprietà restituite e selezione degli attributi;
- paginazione dei risultati;
- richieste dirette con
Invoke-MgGraphRequest.
4. Autenticazione e autorizzazioni
Microsoft Graph PowerShell supporta sia l’accesso delegato sia l’accesso applicativo, o app-only. L’accesso app-only assegna le autorizzazioni direttamente a un’applicazione e richiede il consenso amministrativo per i permessi necessari.
Contenuti:
- autenticazione moderna;
- connessione con
Connect-MgGraph;
- autenticazione interattiva;
- device code authentication;
- contesto della connessione;
- tenant e account utilizzato;
- delegated permissions;
- application permissions;
- scope Microsoft Graph;
- consenso dell’utente e consenso amministrativo;
- principio del minimo privilegio;
- verifica del contesto con
Get-MgContext;
- disconnessione e gestione della sessione;
- registrazione di un’applicazione in Microsoft Entra ID;
- service principal;
- autenticazione mediante certificato;
- autenticazione app-only;
- introduzione alle Managed Identities;
- protezione delle credenziali e dei certificati.
5. Gestione degli utenti con Microsoft Graph PowerShell
- ricerca e visualizzazione degli utenti;
- selezione delle proprietà;
- filtri e query;
- creazione di nuovi utenti;
- aggiornamento delle proprietà anagrafiche;
- gestione dello stato dell’account;
- configurazione delle informazioni di utilizzo;
- modifica e gestione delle password;
- eliminazione e ripristino degli utenti;
- gestione degli utenti guest;
- controllo degli account inattivi;
- elaborazione in blocco da file CSV;
- esportazione dell’inventario utenti;
- gestione degli errori nelle elaborazioni massive.
6. Gestione di gruppi e appartenenze
- gruppi Microsoft 365;
- gruppi di sicurezza;
- gruppi assegnati e gruppi dinamici;
- creazione e configurazione dei gruppi;
- gestione dei proprietari;
- aggiunta e rimozione dei membri;
- verifica delle appartenenze;
- appartenenze dirette e transitive;
- ricerca dei gruppi privi di proprietario;
- gestione dei gruppi mediante file CSV;
- produzione di report su gruppi e appartenenze;
- relazione tra gruppi Microsoft 365, Teams e SharePoint.
7. Licenze e servizi Microsoft 365
- SKU e prodotti Microsoft 365;
- individuazione delle licenze disponibili;
- verifica delle licenze assegnate;
- assegnazione e rimozione delle licenze;
- prerequisiti relativi alla Usage Location;
- abilitazione e disabilitazione dei singoli service plan;
- elaborazioni massive;
- identificazione degli utenti senza licenza;
- individuazione delle licenze non utilizzate;
- controllo della disponibilità delle licenze;
- esportazione di report su utenti, SKU e servizi abilitati.
8. Exchange Online PowerShell
Il modulo Exchange Online PowerShell utilizza l’autenticazione moderna e consente di collegarsi agli ambienti PowerShell relativi a Exchange Online e ai servizi cloud associati.
Contenuti:
- installazione del modulo ExchangeOnlineManagement;
- connessione con
Connect-ExchangeOnline;
- autenticazione con account protetti da MFA;
- ruoli amministrativi e RBAC;
- gestione delle mailbox;
- shared mailbox;
- proprietà e configurazioni delle cassette postali;
- alias e indirizzi di posta elettronica;
- deleghe e autorizzazioni;
- Full Access, Send As e Send on Behalf;
- gruppi di distribuzione;
- mailbox statistics;
- quote e utilizzo dello spazio;
- ricerca delle mailbox inattive;
- esportazione di report;
- introduzione alla connessione app-only;
- disconnessione e gestione corretta delle sessioni.
9. Microsoft Teams PowerShell
Il modulo Microsoft Teams permette di amministrare utenti, team, configurazioni e policy direttamente da PowerShell. I team sono inoltre collegati ai corrispondenti gruppi Microsoft 365.
Contenuti:
- installazione del modulo MicrosoftTeams;
- connessione con
Connect-MicrosoftTeams;
- ricerca e visualizzazione dei team;
- creazione e configurazione dei team;
- gestione di proprietari e membri;
- gestione dei canali;
- impostazioni fondamentali dei team;
- criteri e policy di Teams;
- assegnazione delle policy agli utenti;
- elaborazioni massive;
- produzione di report su team, proprietari e membri;
- individuazione dei team senza proprietario;
- differenze tra gestione Teams tramite modulo MicrosoftTeams e Microsoft Graph.
10. SharePoint Online PowerShell
SharePoint Online Management Shell consente di amministrare impostazioni a livello di organizzazione e di raccolta siti.
Contenuti:
- installazione di SharePoint Online Management Shell;
- connessione al centro di amministrazione SharePoint;
- visualizzazione dei siti;
- creazione e rimozione dei siti;
- proprietà delle raccolte siti;
- gestione degli amministratori;
- quote e utilizzo dello spazio;
- condivisione esterna;
- controllo delle impostazioni essenziali;
- esportazione dell’inventario dei siti;
- individuazione dei siti senza amministratore;
- relazione tra SharePoint Online, gruppi Microsoft 365 e Teams;
- cenni alle possibilità offerte da Microsoft Graph.
11. Elaborazione dei dati e reporting
- selezione e trasformazione degli oggetti;
Select-Object, Where-Object e ForEach-Object;
- ordinamento e raggruppamento;
- proprietà calcolate;
- gestione di array e collezioni;
- importazione da CSV;
- esportazione in CSV;
- conversione e gestione di dati JSON;
- creazione di report amministrativi;
- confronto tra configurazioni;
- costruzione di inventari periodici;
- produzione di output leggibili;
- utilizzo dei dati provenienti da più servizi Microsoft 365.
12. Automazione, sicurezza e affidabilità degli script
- struttura di uno script amministrativo;
- parametri e variabili;
- funzioni riutilizzabili;
- validazione dei dati;
- controllo dell’esistenza degli oggetti;
- gestione delle eccezioni con
try, catch e finally;
- registrazione delle attività;
- transcript e file di log;
- gestione degli errori nelle elaborazioni massive;
- modalità di simulazione e conferma;
- idempotenza degli script;
- protezione di password, secret e certificati;
- separazione tra codice e configurazione;
- autenticazione non interattiva;
- pianificazione degli script;
- attività schedulate;
- cenni ad Azure Automation;
- manutenzione e aggiornamento degli script;
- controllo delle versioni dei moduli;
- gestione delle modifiche delle API e dei cmdlet.
- Il corso si svolgerà in modalità online live streaming, con il docente che terrà le lezioni in diretta.
- I partecipanti dovranno avere a disposizione un Personal Computer e preferibilmente un secondo schermo.
- Saranno forniti labs online che vengono messi a disposizione anche dopo la fine del corso per 3 mesi.
- Al termine del corso, coloro che avranno partecipato ad almeno l'80% delle lezioni riceveranno un attestato di frequenza.
È richiesta una conoscenza operativa di base di:
- Microsoft 365;
- utenti, gruppi e licenze;
- concetti fondamentali di Microsoft Entra ID;
- amministrazione di sistemi Microsoft;
- comandi e pipeline di base di PowerShell.
È consigliata la precedente partecipazione a un corso introduttivo su PowerShell oppure il possesso di competenze equivalenti.
Non è richiesta una conoscenza approfondita della programmazione.