Netwrix 1Secure ofrece visibilidad unificada de datos e identidad - gratis durante 14 días con acceso completo.Comience una prueba gratuita

Centro de recursosGuía práctica
Cómo generar un informe de permisos de OU de Active Directory

Cómo generar un informe de permisos de OU de Active Directory

Para informar sobre los permisos otorgados en una unidad organizativa (OU) de Active Directory, necesita la lista de control de acceso de la OU, el registro que AD mantiene sobre qué cuentas tienen qué derechos. A continuación, encontrará cómo está estructurada esa lista de control de acceso, un script de PowerShell que la obtiene gratis, cómo leer lo que se devuelve y cómo generar el mismo informe sin scripts usando Netwrix Auditor.

Vea quién accede a qué, cuándo y por qué con Netwrix Auditor.

¿Cómo funcionan los permisos de OU en Active Directory?

Cada objeto en Active Directory, incluyendo cada OU, tiene una lista de control de acceso (ACL): un conjunto de entradas de control de acceso (ACE) que indican qué cuentas o grupos pueden hacer qué con ese objeto. Los permisos en una OU provienen de tres lugares:

  • Explícito, otorgado directamente en la propia OU.
  • A través de la pertenencia a un grupo, donde una cuenta obtiene derechos porque pertenece a un grupo al que se le concedió acceso.
  • Inherited, que fluye desde un contenedor principal, ya que los permisos de AD se transmiten desde la raíz del dominio a través de cada OU principal a menos que la herencia esté explícitamente bloqueada.

Por eso, un informe útil de permisos debe mostrar más que quién tiene acceso. También debe mostrar cómo lo obtuvieron, ya que una concesión directa conlleva un riesgo diferente al mismo acceso heredado de un contenedor principal o adquirido a través de un grupo.

Generar el informe con PowerShell (Get-Acl)

  1. Abra Powershell ISE → Cree un nuevo script con el código a continuación, configure el Nombre de usuario y la ruta de exportación, luego ejecútelo:
      $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
      
  • Abra el archivo exportado en Excel.

Informe de ejemplo:

a table with a lot of rows and columns of data

Leer e interpretar el informe

Una vez que tenga el CSV, algunas columnas son las más importantes:

  • IdentityReference: quién o qué grupo tiene acceso.
  • ActiveDirectoryRights: lo que esa cuenta puede hacer realmente. GenericAll, por ejemplo, significa control total sobre el objeto, no solo acceso de lectura.
  • IsInherited: si el derecho fue concedido directamente o heredado de un contenedor principal. Normalmente es aquí donde se oculta el riesgo. Una concesión directa (IsInherited = False) a una cuenta individual, o a un grupo amplio como Authenticated Users que tiene más de lo necesario, merece una revisión más detallada.
  • AccessControlType: si la entrada permite o deniega el derecho. Las entradas de denegación son raras y merecen ser investigadas por separado.

Si ve un nivel de derechos como GenericAll o WriteProperty otorgado directamente a una cuenta individual en lugar de a través de un grupo esperado, o un grupo integrado amplio que tiene más que acceso de lectura, ese es un candidato para limpieza bajo el principio de menor privilegio.

Informe a gran escala con una herramienta

Cuando necesite esto en más de una OU, en un horario recurrente o sin mantener un script, Netwrix Auditor le ofrece el mismo informe incorporado.

  1. En Netwrix Auditor, vaya a "Reports" → Expanda la sección "Active Directory" → Vaya a "Active Directory - State-in-Time" → Seleccione "Object Permissions in Active Directory" → Haga clic en "View".
  2. Especifique los valores para los filtros a continuación, luego haga clic en "Ver informe":
    • Ruta UNC del objeto
    • Medios concedidos
    • Permisos
  3. Para guardar el informe, haga clic en el botón "Export" → Elija un formato del menú desplegable → Haga clic en "Save".
object permissions in active directory shows accounts with explicit or inherited permissions on a specific active directory object

Más allá de este informe único, Netwrix Auditor también rastrea quién cambió qué, cuándo y cómo, para que puedas detectar actividades inusuales antes de que se conviertan en un incidente, no solo una instantánea. Y no hay nada que descifrar: Nombre de cuenta, Tipo de cuenta y Medios concedidos ya vienen etiquetados, sin GenericAll ni IsInherited que traducir.

Vea quién accede a qué, cuándo y por qué con Netwrix Auditor. Descargue la prueba gratuita.

Obtenga una lista de permisos de Active Directory para una OU específica para revocar derechos de acceso excesivos y prevenir el abuso de privilegios

Aplicar estrictamente el principio de menor privilegio, es decir, que cada cuenta tenga solo el acceso que realmente necesita, es esencial para una sólida seguridad de Active Directory. Un informe completo de permisos de AD le muestra quién tiene acceso a qué en el dominio, cómo se otorgó cada permiso (directamente o a través de la pertenencia a grupos) y si el acceso de una cuenta aún coincide con sus responsabilidades o es remanente de un rol que ya no desempeña.

Un informe de una sola OU es un buen punto de partida, pero el acceso se extiende mucho más allá de cualquier OU, a través de grupos anidados, comparticiones de archivos, SharePoint y repositorios en la nube a los que pueden acceder tus cuentas de AD. Netwrix Access Analyzer amplía esta misma pregunta: quién puede acceder a qué en todo tu entorno, señala automáticamente permisos excesivos o obsoletos y permite a los propietarios de datos revisar y revocar el acceso que ya no necesitan.

Preguntas frecuentes

Compartir en