Аудиторы задают вопросы об ACL для определенных групп в нескольких разных доменах. Я собрал сценарий, который возвращает необходимую мне информацию для нашего основного домена (Учетные записи), но не может заставить его переключиться на другой домен (Medco), чтобы получить ACL для этих групп. Как переключить командлет Get-Acl
, чтобы прочитать информацию из этого другого домена?Get-Acl из разных доменов
Get-Content 'U:\ad\scripts\Scripts - Input\ADGroup Permissions - Medco.txt' | ForEach-Object {
$OutputG = $_
$Group = "AD:" + (Get-ADgroup $_ -Server Medco).distinguishedname
(Get-Acl $Group).access |
Where-Object {
$_.ActiveDirectoryRights -like "*write*" -or
$_.ActiveDirectoryRights -like "*delete*"
} |
Sort-Object IdentityReference |
Select-Object identityreference,
@{L='Access'; E={$_.ActiveDirectoryRights -join ";"}},
@{"n"="Group";"e"={"$OutputG"}}
} | Export-csv ".\Scripts - Output\ACL_Medco_$CurrentDate.csv" -NoTypeInformation
Сценарий я читаю имена групп из текстового файла для конкретных областей, а затем ForEach-Object
передать имя группы, чтобы получить distinguishedName
использовать его в Get-Acl
. Первый набор групп для основного домена возвращает информацию правильно (не показывая эту часть). Я знаю, что существуют группы, в следующем домене, но проблема в том, что Get-Acl
для него выдает ошибку о том,
Get-Acl : Cannot find path 'AD:CN=Medco Infrastructure & Security,OU=Recipients - Distribution Lists,OU=Legacy Exchange 5.5,OU=Exchange,DC=medco,DC=com' because it does not exist. At line:4 char:4 + (Get-Acl $Group).access + ~~~~~~~~~~~~~~ + CategoryInfo : ObjectNotFound: (:) [Get-Acl], ItemNotFoundException + FullyQualifiedErrorId : GetAcl_PathNotFound_Exception, Microsoft.PowerShell.Commands.GetAclCommand