function Get-ADSystemInfo{ <# .LINK https://technet.microsoft.com/en-us/library/ee198776.aspx #> $properties = @( 'UserName', 'ComputerName', 'SiteName', 'DomainShortName', 'DomainDNSName', 'ForestDNSName', 'PDCRoleOwner', 'SchemaRoleOwner', 'IsNativeMode' ) $ads = New-Object -ComObject ADSystemInfo $type = $ads.GetType() $hash = @{} foreach($p in $properties){ $hash.Add($p,$type.InvokeMember($p,'GetProperty', $Null, $ads, $Null)) } [pscustomobject]$hash } Get-ADSystemInfo # get all user groups $userDN = Get-ADSystemInfo | select -expand username [adsi]"LDAP://$userDN" | select -expand memberof # get Computer object an parent OU $computerDN = Get-ADSystemInfo | select -expand ComputerName [adsi]"LDAP://$computerDN" | select -expand parent #https://www.sapien.com/forums/viewtopic.php?f=18&t=12297