Public/Get-ADSIDomainRoot.ps1

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
function Get-ADSIDomainRoot
{
<#
 .SYNOPSIS
  Function to retrieve the Domain Root in the Forest
  
 .DESCRIPTION
  Function to retrieve the Domain Root in the Forest
  
 .PARAMETER Credential
  Specifies the alternative credential to use. Default is the current one.
  
 .PARAMETER ForestName
  Specifies the alternative forest name to query. Default is the current one.
  
 .NOTES
  Francois-Xavier Cat
  lazywinadmin.com
  @lazywinadm
  github.com/lazywinadmin
#>

    
    [CmdletBinding()]
    [OutputType('System.DirectoryServices.ActiveDirectory.Domain')]
    param
    (
        [Alias("RunAs")]
        [System.Management.Automation.PSCredential]
        [System.Management.Automation.Credential()]
        $Credential = [System.Management.Automation.PSCredential]::Empty,
        
        $ForestName = [System.DirectoryServices.ActiveDirectory.Forest]::Getcurrentforest()
    )
    
    (Get-ADSIForest @PSBoundParameters).RootDomain
}