Netwrix 1Secure offre visibilità unificata su dati e identità - gratuito per 14 giorni con accesso completo.Inizia una prova gratuita

Centro risorseGuida pratica
Come generare un report dei permessi OU di Active Directory

Come generare un report dei permessi OU di Active Directory

Per creare un report sulle autorizzazioni concesse a un'unità organizzativa (OU) di Active Directory, è necessario l'elenco di controllo degli accessi della OU, il registro che AD tiene su quali account detengono quali diritti. Di seguito troverai come è strutturato quell'elenco di controllo degli accessi, uno script PowerShell che lo estrae gratuitamente, come leggere i risultati e come generare lo stesso report senza script utilizzando Netwrix Auditor.

Scopri chi accede a cosa, quando e perché con Netwrix Auditor.

Come funzionano le autorizzazioni OU in Active Directory?

Ogni oggetto in Active Directory, inclusa ogni OU, ha una lista di controllo accessi (ACL): un insieme di voci di controllo accessi (ACE) che indicano quali account o gruppi possono fare cosa su quell'oggetto. I permessi su una OU provengono da tre fonti:

  • Esplicito, concesso direttamente sulla OU stessa.
  • Attraverso l'appartenenza a un gruppo, dove un account ottiene diritti perché appartiene a un gruppo a cui è stato concesso l'accesso.
  • Inherited, che si propaga da un contenitore principale, poiché le autorizzazioni AD si trasmettono dalla radice del dominio attraverso ogni OU principale a meno che l'ereditarietà non sia esplicitamente bloccata.

Ecco perché un report utile sulle autorizzazioni deve mostrare più di chi ha accesso. Deve anche mostrare come lo hanno ottenuto, poiché una concessione diretta comporta un rischio diverso rispetto allo stesso accesso ereditato da un contenitore principale o acquisito tramite un gruppo.

Genera il report con PowerShell (Get-Acl)

  1. Apri Powershell ISE → Crea un nuovo script con il codice sottostante, imposta il Nome utente e il percorso di esportazione, quindi eseguilo:
      $schemaIDGUID = @{}
#ignore duplicate errors if any#
$ErrorActionPreference = 'SilentlyContinue'
Get-ADObject -SearchBase (Get-ADRootDSE).schemaNamingContext -LDAPFilter '(schemaIDGUID=*)' -Properties
name, schemaIDGUID |
ForEach-Object {$schemaIDGUID.add([System.GUID]$_.schemaIDGUID,$_.name)}
Get-ADObject -SearchBase "CN=Extended-Rights,$((Get-ADRootDSE).configurationNamingContext)" -LDAPFilter
'(objectClass=controlAccessRight)' -Properties name, rightsGUID |
ForEach-Object {$schemaIDGUID.add([System.GUID]$_.rightsGUID,$_.name)}
$ErrorActionPreference = 'Continue'
# Get OU.
$OUs = Get-ADOrganizationalUnit -Filter 'Name -like "Production"'| Select-Object -ExpandProperty
DistinguishedName
# retrieve OU permissions.
# Add report columns to contain the OU path and string names of the ObjectTypes.
ForEach ($OU in $OUs) {
$report += Get-Acl -Path "AD:\$OU" |
Select-Object -ExpandProperty Access |
Select-Object @{name='organizationalUnit';expression={$OU}}, `
@{name='objectTypeName';expression={if ($_.objectType.ToString() -eq '00000000-0000- 0000-0000-
000000000000') {'All'} Else {$schemaIDGUID.Item($_.objectType)}}}, `
@{name='inheritedObjectTypeName';expression={$schemaIDGUID.Item($_.inheritedObjectType)}}, `
*
}
# Export report out to a CSV file for analysis in Excel.
$report | Export-Csv -Path "C:\data\OU_Permissions.csv" -NoTypeInformation
      
  • Apri il file esportato in Excel.

Rapporto di esempio:

a table with a lot of rows and columns of data

Leggere e interpretare il rapporto

Una volta ottenuto il CSV, alcune colonne sono le più importanti:

  • IdentityReference: chi o quale gruppo ha accesso.
  • ActiveDirectoryRights: cosa che quell'account può effettivamente fare. GenericAll, ad esempio, significa controllo completo sull'oggetto, non solo accesso in lettura.
  • IsInherited: se il diritto è stato concesso direttamente o ereditato da un contenitore padre. Di solito è qui che si nasconde il rischio. Una concessione diretta (IsInherited = False) a un account individuale, o a un gruppo ampio come Authenticated Users che detiene più di quanto necessario, merita un esame più attento.
  • AccessControlType: se la voce consente o nega il diritto. Le voci di negazione sono rare e meritano di essere investigate separatamente.

Se vedi un livello di diritti come GenericAll o WriteProperty concesso direttamente a un account individuale anziché tramite un gruppo previsto, o un ampio gruppo integrato che ha più di un accesso in sola lettura, questo è un candidato per la pulizia secondo il principio del minimo privilegio.

Genera report su larga scala con uno strumento

Quando hai bisogno di questo su più di un'OU, con una pianificazione ricorrente o senza mantenere uno script, Netwrix Auditor ti offre lo stesso report integrato.

  1. In Netwrix Auditor, vai su "Reports" → Espandi la sezione "Active Directory" → Vai su "Active Directory - State-in-Time" → Seleziona "Object Permissions in Active Directory" → Clicca su "View".
  2. Specifica i valori per i filtri qui sotto, quindi fai clic su "Visualizza rapporto":
    • Percorso UNC dell'oggetto
    • Mezzi concessi
    • Autorizzazioni
  3. Per salvare il report, cliccare sul pulsante "Export" → Scegliere un formato dal menu a tendina → Cliccare su "Save".
object permissions in active directory shows accounts with explicit or inherited permissions on a specific active directory object

Oltre a questo report una tantum, Netwrix Auditor traccia anche chi ha cambiato cosa, quando e come, così puoi individuare attività insolite prima che diventino un incidente, non solo un'istantanea. E non c'è nulla da decifrare: Nome account, Tipo account e Mezzi concessi sono già etichettati, niente GenericAll o IsInherited da tradurre.

Scopri chi accede a cosa, quando e perché con Netwrix Auditor. Scarica la prova gratuita.

Ottieni un elenco delle autorizzazioni di Active Directory per una OU specifica per revocare diritti di accesso eccessivi e prevenire l'abuso di privilegi

Applicare rigorosamente il principio del minimo privilegio, cioè che ogni account abbia solo l'accesso di cui ha effettivamente bisogno, è essenziale per una solida sicurezza di Active Directory. Un rapporto completo sui permessi di AD mostra chi ha accesso a cosa nel dominio, come è stato concesso ogni permesso (direttamente o tramite appartenenza a gruppi) e se l'accesso di un account corrisponde ancora alle sue responsabilità o è residuo di un ruolo che non ricopre più.

Un report di una singola OU è un buon punto di partenza, ma l’accesso si estende ben oltre qualsiasi OU, attraverso gruppi nidificati, condivisioni di file, SharePoint e repository cloud a cui i tuoi account AD possono accedere. Netwrix Access Analyzer estende questa stessa domanda: chi può accedere a cosa, in tutto il tuo ambiente, segnala automaticamente permessi eccessivi o obsoleti e consente ai proprietari dei dati di rivedere e revocare gli accessi non più necessari.

Domande frequenti

Condividi su