Salta al contenuto
Guida

Governance dell'identità Entra ID con PowerShell: 10 script per le PMI

Chi ha i poteri di amministrazione? Quali segreti stanno per scadere? Quali guest hanno ancora accesso? Questi 10 script PowerShell gratuiti mettono in fila la governance dell'identità in Microsoft Entra ID.

SynSphere Italia Pubblicato il 7 min di lettura
Toolkit di 10 script PowerShell per la governance dell'identità in Microsoft Entra ID

La maggior parte degli incidenti in Microsoft 365 non nasce da un exploit sofisticato, ma da igiene dell’identità trascurata: un account amministrativo di troppo, un segreto d’app scaduto che blocca un’integrazione, un guest di un fornitore che ha ancora accesso a un anno di distanza, un consenso OAuth dato con leggerezza. Il problema non è la mancanza di dati — Entra ID li ha tutti — ma il fatto che siano sparsi e difficili da rivedere con regolarità.

PowerShell li mette in fila. Con il Microsoft Graph PowerShell SDK puoi interrogare l’identità del tenant in modo ripetibile e ottenere CSV che valgono come evidenze di governance. Abbiamo raccolto 10 script — tutti di sola lettura — in un toolkit gratuito.

I 10 script, in 4 aree

Accessi privilegiati — chi ha i poteri

  • 01 · Get-EntraPrivilegedRoleMembers — i ruoli directory attivi e i loro membri (chi è Global Administrator & co.).
  • 02 · Get-EntraPimEligibleRoles — le assegnazioni eleggibili in PIM: chi può attivare un ruolo privilegiato (richiede Entra ID P2).

Igiene delle app — cosa ha accesso al tenant

  • 03 · Get-EntraAppRegistrations — inventario delle app registration con numero di owner (le app senza owner rischiano l’abbandono).
  • 04 · Get-EntraExpiringAppCredentialssegreti e certificati in scadenza entro N giorni (e già scaduti): il controllo anti-blocco per eccellenza.
  • 05 · Get-EntraEnterpriseApps — i service principal (enterprise app) con tipo, stato e numero di credenziali.

Perimetro e collaborazione esterna

  • 06 · Get-EntraGuestAccounts — i guest B2B con creazione e ultimo accesso, per rivedere chi entra dall’esterno (l’ultimo accesso richiede Entra ID P1).
  • 09 · Get-EntraOAuth2PermissionGrants — i consensi OAuth2 delegati concessi alle app: dove individuare permessi eccessivi o app sospette.

Gruppi e sintesi

  • 07 · Get-EntraGroupsWithoutOwners — i gruppi senza owner (gap di governance da chiudere).
  • 08 · Get-EntraGroupBasedLicensing — i gruppi che assegnano licenze (group-based licensing), per capire come sono distribuite.
  • 10 · Get-EntraIdentitySummary — il cruscotto: Global Admin, app, credenziali in scadenza a 30 giorni, service principal e guest, in una riga di sintesi datata.

Il flusso consigliato

  1. Parti dalle emergenze silenziose: 04 (credenziali in scadenza) evita il blocco improvviso di un’integrazione — eseguilo con cadenza mensile.
  2. Verifica i poteri: 01 e 02 ti dicono chi amministra il tenant, ora e in potenza (PIM).
  3. Rivedi il perimetro: 06 (guest) e 09 (consensi) per chiudere accessi e permessi non più necessari.
  4. Chiudi i gap di governance: 07 (gruppi senza owner) e la fotografia rapida con 10.

Scarica il toolkit

Scarica i 10 script identità (ZIP) — codice originale SynSphere, parametrico e commentato, con README e gli scope Graph a minor privilegio dichiarati script per script. Tutti di sola lettura. Licenza: uso interno aziendale gratuito.

Identità, sicurezza e NIS2

La gestione degli accessi (specie privilegiati) e la revisione periodica di app e permessi sono tra le misure attese dal recepimento italiano della NIS2. I report 01/02 (accessi privilegiati), 04 (credenziali) e 09 (consensi) sono evidenze concrete e datate. Per il quadro delle scadenze parti dalle misure di base NIS2 entro il 31 ottobre 2026; per la postura di sicurezza complementa con il toolkit Defender.

Se preferisci delegare

Tenere pulita l’identità — rinnovare le credenziali prima che scadano, ridurre gli amministratori, rivedere guest e consensi — è un lavoro continuo. È parte della nostra cybersecurity gestita: governance degli accessi, monitoraggio e reportistica per gli audit. Vuoi partire da una fotografia della tua identità? Falla con il toolkit o chiedi un assessment.

Per automatizzare anche utenti, licenze e sicurezza email di Microsoft 365, vedi l’automazione di Microsoft 365 con PowerShell.

Domande frequenti

Questi script modificano ruoli, app o utenti?

No. Tutti e 10 sono di sola lettura: interrogano Microsoft Entra ID ed esportano CSV, senza assegnare ruoli, creare credenziali o modificare gruppi. Servono a fotografare e documentare lo stato dell’identità. Usano scope Microsoft Graph di sola lettura a minor privilegio, dichiarati nell’intestazione di ogni file (es. RoleManagement.Read.Directory, Application.Read.All).

Servono licenze particolari?

Per la maggior parte basta un account con ruolo di lettura directory (Global Reader) e il modulo Microsoft Graph PowerShell SDK. Due script dipendono dalle licenze premium: i ruoli eleggibili PIM (script 02) richiedono Microsoft Entra ID P2, e l’ultimo accesso dei guest (script 06) richiede Entra ID P1. In assenza di licenza gli script proseguono in modo controllato, senza quel dato.

Qual è lo script più utile da eseguire per primo?

Lo script 04, che elenca segreti e certificati delle app in scadenza (inclusi quelli già scaduti): è il controllo che previene il classico blocco improvviso di un’integrazione per una credenziale non rinnovata. Subito dopo, lo script 01 (chi è amministratore) e lo script 10 (cruscotto di sintesi) danno il quadro degli accessi privilegiati in pochi secondi.

In cosa si differenzia dal toolkit di sicurezza Defender?

Sono complementari. Il toolkit Defender guarda la postura di sicurezza (Secure Score, avvisi, incidenti, MFA, accesso condizionale); questo guarda la governance dell’identità: chi ha i poteri, quali app e credenziali esistono, chi accede dall’esterno, quali consensi sono stati concessi. Insieme coprono identità e sicurezza del tenant.

Prodotti e servizi SynSphere correlati

Dal catalogo SynSphere, quello che c'entra con questo articolo.