У меня большой лес с множеством доменов AD, и я часто добавляю новые домены. Мне нужен список этих рекламных доменов, чтобы запросить каждый DC.
GetAllTrustRelationships()
не очень надежный способ перечислить все домены в лесу и может также включать другие леса / домены.
Возьмите Domains
вместо этого ссылки из объекта Forest:
function Get-ADInside
{
$Forest = [System.DirectoryServices.ActiveDirectory.Forest]::GetCurrentForest()
$Domains = $Forest.Domains
$Domains |Select -ExpandProperty Name
}
эта функция перечисляет ваш домен Active Directory, доступный в лесу (включая текущий домен => $ Forest.Domains.name)
function get-AdInside () {
$MainForest = [System.DirectoryServices.ActiveDirectory.Forest]::GetCurrentForest()
$ForestTrusts = $MainForest.GetAllTrustRelationships()
$ADs = @($MainForest.Domains.name)
$ADs += $ForestTrusts.TargetName
return $ADs
}
протестировано с текущим доменом 2008-2008r2-2012 +