Obtenga y agregue reglas de auditoría de OU de dominio de Active Directory con PowerShell

Obtenga y agregue reglas de auditoría de OU de dominio de Active Directory con PowerShell

Me gustaría usar PowerShell para crear secuencias de comandos que muestran y editan reglas de auditoría para objetos de Active Directory en lugar de operar a través de la GUI como se describe a continuación: Desde Usuarios y computadoras de Active Directory, habilite "Funciones avanzadas" en el menú "Ver", seleccione "Dominio". Controladores OU" en el panel izquierdo Haga clic derecho en el objeto "Controladores de dominio OU" y seleccione "Propiedades" Seleccione la pestaña "Seguridad" Seleccione el botón "Avanzado" y luego la pestaña "Auditoría"

Esto es lo que tengo hasta ahora. Primero obtenga el nombre distinguido de la unidad organizativa:

import activedirectory
set-location ad:
dir

Conecte el nombre distinguido correcto de la salida del directorio anterior en Get-Acl:

$acl = Get-Acl -Path "DC=something,DC=somethingElse"

El método GetSecurityDescriptorSddlForm del objeto $acl parece estar relacionado, pero no proporciona resultados legibles por humanos. Luego probé:

$domain = Get-AdDomain -Server "serverName"
$domainSID = $domain.DomainSID
$acl.GetAuditRules(1,1,$domainSID)

Pero esto genera un error: No se puede convertir el argumento targetType con el valor "..." para que GetAuditRules escriba "System.Type": No se puede convertir el valor "..." del tipo System.Security.Principal.SecurityIdentifier para escribir "System. Tipo"

La documentación de GetAuditRules parece decir que aceptará un SecurityIdentifier para el tercer parámetro, que es lo que pensé que le había dado al método GetAuditRules. https://docs.microsoft.com/en-us/dotnet/api/system.security.accesscontrol.commonobjectsecurity.getauditrules?view=dotnet-plat-ext-3.1

Además, la publicación aquí parece relacionada, pero no entiendo cómo seleccionar el método constructor correcto para crear una ActiveDirectoryAuditRule y cómo recopilar los parámetros necesarios, como GUID. https://social.technet.microsoft.com/Forums/en-US/70881826-6189-48c0-8ee7-0d79aa18f085/powershell-to-set-audit-flags-on-ou?forum=ITCG

Se agradece cualquier ayuda. ¡Gracias!

Respuesta1

Este es para un registro pero parece muy similar. Pruebe el interruptor "-audit" en su get-acl.

https://stackoverflow.com/questions/13509667/how-to-get-audit-rule-in-acl-object-with-getauditrules-on-registry-key-in-powe

$acl = get-acl -path $pathtoOU -Auditoría

$acl.getauditrules($true,$true, [System.Security.Principal.NTAccount])

información relacionada