Tool Diagnostica Licenze Office365 e Sincronizzazione

()

⚙️ Cosa fa lo script:

  • Si connette a Azure AD, MSOnline, e Exchange Online.
  • Controlla sync Azure AD attivo + ultimo tempo di sync.
  • Verifica licenze disponibili e consumate.
  • Controlla che i principali servizi cloud siano attivi.
  • Lista utenti con MFA attivo o no.
  • Mostra eventuali account bloccati.

📦 Requisiti

  • Permessi: devi avere almeno Global Reader o Global Admin su Microsoft 365.
  • Moduli installati: powershell Install-Module MSOnline Install-Module AzureAD Install-Module ExchangeOnlineManagement

#Richiede i moduli AzureAD, MSOnline, ExchangeOnlineManagement

#Installali con: Install-Module -Name AzureAD, MSOnline, ExchangeOnlineManagement

#Connetti ai servizi

Write-Host “Connettendo ad Office 365…” -ForegroundColor Cyan
Connect-MsolService
Connect-AzureAD
Connect-ExchangeOnline -ShowBanner:$false

#1. Verifica sincronizzazione Azure AD

Write-Host “`n[1] Stato sincronizzazione Azure AD Connect:” -ForegroundColor Yellow
Get-MsolCompanyInformation | Select-Object DirectorySynchronizationEnabled, LastDirSyncTime

#2. Verifica licenze disponibili e assegnate

Write-Host “`n[2] Stato Licenze Office 365:” -ForegroundColor Yellow
Get-MsolAccountSku | Format-Table AccountSkuId, ActiveUnits, ConsumedUnits

#3. Verifica stato dei principali servizi Office 365

Write-Host “`n[3] Stato Servizi Office 365 (Exchange, Teams, SharePoint):” -ForegroundColor Yellow
$services = @(“Exchange Online”, “Microsoft Teams”, “SharePoint Online”)
foreach ($service in $services) {
$serviceStatus = Get-MsolServicePrincipal | Where-Object {$_.DisplayName -eq $service}
if ($serviceStatus.AccountEnabled) {
Write-Host “$service è ATTIVO.” -ForegroundColor Green
} else {
Write-Host “$service NON ATTIVO o Problema!” -ForegroundColor Red
}
}

#4. Verifica utenti con MFA abilitato

Write-Host “`n[4] Stato MFA Utenti:” -ForegroundColor Yellow
Get-MsolUser | Select-Object DisplayName, UserPrincipalName, StrongAuthenticationMethods | Format-Table -AutoSize

#5. Controlla eventuali utenti disabilitati

Write-Host “`n[5] Utenti disabilitati:” -ForegroundColor Yellow
Get-MsolUser -All | Where-Object {$_.BlockCredential -eq $true} | Select-Object DisplayName, UserPrincipalName

Chiude le sessioni

Disconnect-ExchangeOnline -Confirm:$false
Write-Host “`nDiagnostica completata.” -ForegroundColor Cyan


  • Aprire powerShell con diritti di Amministratore
  • Copiare e Incollare l’intero script
  • Dare Invio

/ 5
Grazie per aver votato!

How useful was this post?

Click on a star to rate it!

Average rating / 5. Vote count:

No votes so far! Be the first to rate this post.

As you found this post useful...

Follow us on social media!

We are sorry that this post was not useful for you!

Let us improve this post!

Tell us how we can improve this post?