/
/

Come usare PowerShell per esportare l’inventario dei dispositivi Azure inattivi da eliminare

di Team Ninja
How to Use PowerShell to Export Inactive Azure Device Inventory for Cleanup blog banner image

Riepilogo

Questo post del blog NinjaOne offre un elenco completo di comandi CMD di base e un’analisi approfondita dei comandi di Windows con oltre 70 comandi cmd essenziali sia per i principianti che per gli utenti avanzati. La guida si propone si piegare in modo pratico i comandi del prompt dei comandi per la gestione dei file, la navigazione nelle directory, la risoluzione dei problemi di rete, le operazioni su disco e l’automazione, con esempi reali per migliorare la produttività. Che tu voglia imparare i comandi cmd fondamentali o padroneggiare gli strumenti avanzati della CLI di Windows, questa guida ti aiuterà a utilizzare il Prompt dei comandi in modo più efficace.

Con il passare del tempo, i dispositivi collegati a Microsoft Entra ID (precedentemente noto come Azure AD) possono diventare obsoleti, inattivi o duplicati. Disporre di un elenco dei dispositivi inattivi o obsoleti da eliminare aiuta gli amministratori IT a prendere decisioni consapevoli, ottimizzare le licenze e mantenere ordinato l’ambiente Azure.

Questa guida mostra come usare PowerShell e le API Microsoft Graph per identificare, esportare e automatizzare la pulizia di Azure AD dai dispositivi obsoleti aggiunti alla directory.

Ti serve una guida visiva per comprendere meglio l’argomento? Guarda il nostro video: Come usare PowerShell per esportare l’inventario dei dispositivi Azure inattivi da eliminare.

Come esportare il file CSV dei dispositivi obsoleti aggiunti ad Azure AD: guida passo passo

Per rimuovere i dispositivi inattivi da Azure AD, ti serve prima un elenco dei dispositivi inattivi. Questa sezione ti accompagna passo passo nell’esportazione del file CSV tramite PowerShell.

📌 Prerequisiti:

Per il processo principale di esportazione del file CSV servono i seguenti elementi:

  • Autorizzazioni di amministratore di Azure AD o Entra ID
  • Accesso alle API Microsoft Graph con le seguenti autorizzazioni:
    • Device.Read.All
    • Directory.Read.All
  • PowerShell 7+
  • Modulo Microsoft.Graph installato

Inoltre, potresti voler disporre di un agente RMM e dell’accesso al registro di sistema per i passaggi successivi all’esportazione del CSV.

Passaggio 1: connettiti a Microsoft Graph e recupera l’elenco dei dispositivi

Segui questi passaggi:

  1. Connettiti a Microsoft Graph e autentica la connessione con il comando:

Connect-MgGraph -Scopes "Device.Read.All Directory.Read.All"

  1. Recupera l’elenco dei dispositivi con il comando: $devices = Get-MgDevice -All

Passaggio 2: filtra i dispositivi Azure obsoleti o inattivi

Identifica i dispositivi Azure obsoleti o inattivi in base alla data dell’ultima attività. Per farlo, definisci la soglia di inattività con il comando:

$cutoff = (Get-Date).AddDays(-90)
$inactiveDevices = $devices | Where-Object {
$_.ApproximateLastSignInDateTime -lt $cutoff
}

💡 SUGGERIMENTO: per ottenere un elenco più accurato, puoi anche escludere gli account di servizio e gli oggetti ibridi con questo comando:

$inactiveDevices = $inactiveDevices | Where-Object {
# Exclude Hybrid Azure AD Joined devices
$_.DeviceTrustType -ne “HybridAzureADJoined” -and
# Exclude Personally Owned devices (keep only Corporate owned)
$_.DeviceOwnership -eq “Company”
}

Metodo alternativo: come individuare gli utenti inattivi in Azure Active Directory

Puoi individuare gli utenti inattivi anche dall’interfaccia di amministrazione di Entra. Vai su Monitoraggio > Accessi, quindi filtra gli utenti che non hanno effettuato l’accesso entro un intervallo di tempo definito (ad esempio 30, 60 o 90 giorni).

Passaggio 3: esporta il file CSV

Per esportare il file CSV, usa questo comando:

$inactiveDevices | Select-Object DisplayName, Id, DeviceId,
DeviceTrustType, ApproximateLastSignInDateTime |
Export-Csv -Path "C:\Reports\InactiveAzureDevices.csv" -NoTypeInformation

Una volta esportato, il CSV può essere usato per la documentazione, i flussi di lavoro di approvazione e l’importazione negli script di pulizia.

Come contrassegnare i dispositivi per la pulizia locale e come rimuovere i computer obsoleti da Active Directory

Oltre ai tre passaggi principali elencati sopra, puoi proseguire il processo di pulizia con i metodi seguenti:

Contrassegnare i dispositivi per la pulizia locale nel Registro di sistema di Windows tramite PowerShell

Contrassegnare i dispositivi è utile quando puoi accedervi tramite RMM o script. Una volta contrassegnati, gli strumenti RMM e di scripting riescono a identificare quali dispositivi sono considerati obsoleti e a coordinare in sicurezza le azioni di pulizia.

Esegui questo comando in PowerShell:

New-Item -Path "HKLM:\SOFTWARE\Org\DeviceCleanup" -Force
Set-ItemProperty -Path "HKLM:\SOFTWARE\Org\DeviceCleanup" -Name "CleanupStatus" -Value "MarkedInactive"
Set-ItemProperty -Path "HKLM:\SOFTWARE\Org\DeviceCleanup" -Name "MarkedDate" -Value (Get-Date).ToString(“u”)

Esegui la riga seguente nel Prompt dei comandi per verificare che le modifiche siano state applicate:

reg query HKLM\SOFTWARE\Org\DeviceCleanup

Rimuovere i dispositivi obsoleti da Azure AD

Ci sono due modi per eliminare i dispositivi obsoleti, inattivi o duplicati su Azure AD: tramite rimozione con Microsoft Graph oppure tramite il portale di Azure.

Eliminare un dispositivo tramite Microsoft Graph

Per rimuovere un dispositivo direttamente tramite Graph:

Remove-MgDevice -DeviceId $device.Id

⚠️ Importante: l’esecuzione di questo comando comporta rimozioni immediate e permanenti. I dispositivi non vengono spostati in un cestino. Procedi con cautela.

Eliminare un dispositivo obsoleto aggiunto ad AD tramite il portale di Azure

Il portale di Azure dispone di una caratteristica di eliminazione in blocco che consente di rimuovere più dispositivi inattivi contemporaneamente. Vai su Portale di Azure > Entra ID > Dispositivi > Azioni in blocco > Elimina.

Altri aspetti da considerare quando elimini o contrassegni come inattivi i dispositivi aggiunti ad AD

Autenticazione a più fattori e criteri di accesso condizionale

Quando un dispositivo è legato all’accesso di un utente, verifica se rientra nei flussi di MFA o di accesso condizionale. Eliminare un dispositivo ancora legato ai requisiti di accesso di un utente può impedirgli di accedere alle applicazioni aziendali, alle VPN e ad altri file importanti.

Licenze

Intune, Microsoft Defender e altri strumenti Microsoft prevedono spesso una licenza per ogni dispositivo registrato. I dispositivi inattivi e duplicati di norma continuano a consumare queste licenze. Se noti di avere molti dispositivi obsoleti nella tua organizzazione, valuta una pulizia per liberare licenze da destinare ad altri usi.

Ambienti ibridi

In un ambiente ibrido, i dispositivi possono essere aggiunti tramite l’AD on-premise oppure tramite la directory Entra. Eliminare un dispositivo ibrido senza averne verificato il tipo di aggiunta può causare problemi, come stati di aggiunta incoerenti. Verifica sempre lo stato di aggiunta ibrida prima di procedere all’eliminazione.

Audit e documentazione

Le azioni di pulizia fanno solitamente parte dei processi di gestione IT di routine legati a conformità, audit di sicurezza e gestione delle licenze. Tenere un registro dei dispositivi rimossi e del loro stato aiuta a mantenere coerente la documentazione e garantisce che non siano state effettuate eliminazioni non autorizzate.

Risoluzione dei problemi più comuni

Il CSV non viene esportato

Questo problema si verifica quando l’esportazione del CSV (Passaggio 3) non va a buon fine. Le cause possibili sono: il percorso non esiste, l’utente non dispone delle autorizzazioni adeguate oppure ha usato un percorso relativo che in quella sessione non viene risolto correttamente. Per risolvere, verifica il percorso di output oppure usa il percorso completo in $env: TEMP.

Autorizzazione negata

Gli utenti che non includono gli scope necessari durante la connessione a Microsoft Graph possono vedersi bloccato il recupero dei dati dei dispositivi. Per prevenire o risolvere il problema, assicurati di avere il ruolo di amministratore e le autorizzazioni adeguate e di includere gli scope corretti delle API Graph.

ApproximateLastSignInDateTime vuoto

Un valore ApproximateLastSignInDateTime vuoto indica che non è mai stato effettuato un accesso dal dispositivo oppure che la telemetria non è disponibile. In questi casi, confronta i dati del dispositivo con altri strumenti come Intune, l’RMM o l’ultima sincronizzazione di AD prima di contrassegnarlo come inattivo.

Throttling di Graph

Microsoft Graph limita il numero di richieste che puoi effettuare in un determinato intervallo di tempo, soprattutto negli ambienti di grandi dimensioni. Negli ambienti estesi, aggiungi ritardi o paginazione.

I servizi NinjaOne a supporto dei flussi di lavoro di pulizia dei dispositivi

Come strumento, NinjaOne supporta la pulizia dei dispositivi inattivi attraverso i seguenti servizi:

  • Distribuzione di script di pulizia o di marcatori nel registro di sistema su più dispositivi
  • Reporting dei valori di registro (ad esempio CleanupStatus) per il monitoraggio a livello di endpoint
  • Avvisi automatizzati sugli endpoint contrassegnati come inattivi o che non hanno effettuato il check-in entro una determinata soglia
  • Assegnazione di tag ai dispositivi in base a ruolo, sede o stato per le azioni successive
  • Visibilità su tutti i tenant sulla cronologia delle pulizie e sul turnover dei dispositivi

Questi servizi aiutano a colmare il divario tra la pulizia delle identità nel cloud e la gestione operativa degli endpoint.

Mantieni ordinate identità e licenze con audit e rimozioni periodiche dei dispositivi AAD

Controllare regolarmente l’inventario dei dispositivi Azure AD è essenziale per una governance delle identità pulita e per una gestione efficiente delle licenze. Questa guida ha spiegato come usare PowerShell per esportare il file CSV di partenza e quali sono i passaggi successivi per rimuovere in modo efficiente i dispositivi inattivi.

Argomenti correlati:

FAQs

Apri l’interfaccia di amministrazione di Intune e vai su Dispositivi > Regole di pulizia dei dispositivi. Abilita Elimina dispositivi in base alla data dell’ultimo check-in e modifica il valore di soglia (Intune consente un valore compreso tra 30 e 270 giorni).

Le procedure di pulizia aiutano gli amministratori IT e gli MSP a mantenere l’ambiente ordinato e più sicuro. Tra i vantaggi di pulizie periodiche ci sono:

  • Riduzione della superficie di attacco dovuta agli oggetti obsoleti
  • Migliore gestione del ciclo di vita degli endpoint
  • Supporto alle iniziative di pulizia per Entra ID, Intune e Defender
  • Prevenzione del raggiungimento dei limiti di oggetti dispositivo negli ambienti di grandi dimensioni o multi-tenant

Ti potrebbe interessare anche

Pronto a semplificare le parti più complesse dell'IT?