Obtenha e adicione regras de auditoria de UO de domínio do Active Directory com PowerShell

Obtenha e adicione regras de auditoria de UO de domínio do Active Directory com PowerShell

Eu gostaria de usar o PowerShell para criar scripts de exibição e edição de regras de auditoria para objetos do Active Directory em vez de operar por meio da GUI conforme descrito abaixo: Em Usuários e Computadores do Active Directory, habilite "Recursos Avançados" no menu "Exibir", selecione o "Domínio UO de controladores" no painel esquerdo Clique com o botão direito no objeto "OU de controladores de domínio" e selecione "Propriedades" Selecione a guia "Segurança" Selecione o botão "Avançado" e depois a guia "Auditoria"

Aqui está o que tenho até agora. Primeiro obtenha o distintoName da UO:

import activedirectory
set-location ad:
dir

Insira o distintoName correto da saída dir acima em Get-Acl:

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

O método GetSecurityDescriptorSddlForm do objeto $acl parece relacionado, mas não fornece saída legível por humanos. Em seguida, tentei:

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

Mas isso gera um erro: Não é possível converter o argumento targetType com valor "..." para GetAuditRules digitar "System.Type": Não é possível converter o valor "..." do tipo System.Security.Principal.SecurityIdentifier para digitar "System. Tipo"

A documentação do GetAuditRules parece dizer que ele aceitará um SecurityIdentifier para o terceiro parâmetro, que é o que pensei ter alimentado o método GetAuditRules. https://docs.microsoft.com/en-us/dotnet/api/system.security.accesscontrol.commonobjectsecurity.getauditrules?view=dotnet-plat-ext-3.1

Além disso, a postagem aqui parece relacionada, mas não entendo como selecionar o método construtor correto para criar um ActiveDirectoryAuditRule e como coletar os parâmetros necessários, como GUID https://social.technet.microsoft.com/Forums/en-US/70881826-6189-48c0-8ee7-0d79aa18f085/powershell-to-set-audit-flags-on-ou?forum=ITCG

Qualquer ajuda é apreciada. Obrigado!

Responder1

este é para um registro, mas parece muito semelhante. tente a opção "-audit" no seu 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 -Auditoria

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

informação relacionada