Назад | Перейти на главную страницу

Получение и добавление правил аудита OU домена Active Directory с помощью powershell

Я хотел бы использовать PowerShell для отображения и редактирования правил аудита для объектов Active Directory вместо работы через графический интерфейс, как описано ниже: В Active Directory Users and Computers включите «Advanced Features» в меню «View», выберите «Domain» Подразделение контроллеров »на левой панели. Щелкните правой кнопкой мыши объект« Подразделение контроллеров домена »и выберите« Свойства ». Выберите вкладку« Безопасность ». Нажмите кнопку« Дополнительно », а затем вкладку« Аудит ».

Вот что у меня есть на данный момент. Сначала получите отличительное имя OU:

import activedirectory
set-location ad:
dir

Вставьте правильное имя файла из приведенного выше вывода dir в Get-Acl:

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

Метод GetSecurityDescriptorSddlForm объекта $ acl кажется связанным, но не дает удобочитаемого вывода. Далее я попробовал:

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

Но это дает ошибку: не удается преобразовать аргумент targetType со значением «...» для GetAuditRules в тип «System.Type»: невозможно преобразовать значение «...» типа System.Security.Principal.SecurityIdentifier в тип «System. Тип"

В документации для GetAuditRules, кажется, говорится, что он будет принимать SecurityIdentifier для третьего параметра, что, как я думал, я использовал для метода GetAuditRules. https://docs.microsoft.com/en-us/dotnet/api/system.security.accesscontrol.commonobjectsecurity.getauditrules?view=dotnet-plat-ext-3.1

Кроме того, сообщение здесь кажется связанным, но я не понимаю, как выбрать правильный метод конструктора для создания ActiveDirectoryAuditRule и как собрать необходимые параметры, такие как GUID https://social.technet.microsoft.com/Forums/en-US/70881826-6189-48c0-8ee7-0d79aa18f085/powershell-to-set-audit-flags-on-ou?forum=ITCG

Любая помощь приветствуется. Спасибо!

это для реестра, но кажется очень похожим. попробуйте переключатель "-audit" в вашем 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 -Audit

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