我如何检索默认的用户/计算机OU?

我目前正在寻找redirect域上的默认用户和计算机OU。

据我的理解,这可以很容易地实现使用redirusrreditcmp 。 但是,我怎样才能检索当前状态?

从加载了ActiveDirectory扩展的PowerShell中,运行以下命令:

 (get-adobject -filter 'ObjectClass -eq "domain"' -Properties wellKnownObjects).wellKnownObjects 

然后,使用kb324949中的列表,您可以看到这些值已被更改为。

在PowerShell中检索信息的另一种方法是使用.Net DirectorySearcher类或PowerShell的[ADSISearcher]types加速器。 虽然这种方法的input更加困难,但是如果不能保证Active Directory Web服务的可用性,这种方法就派上用场了。 它比“PowerShell”less一些,但是说明了一些有用的PoSH / ADSI / LDAP语法。

顺便说一下,我并不是敲响龙的答案,只是指出一种替代方式,tmtowtdi!

 $a = [adsisearcher]'(&(objectclass=domain))' $a.SearchScope = 'base' $a.FindOne().properties.wellknownobjects | ForEach-Object { if ($_ -match '^B:32:A9D1CA15768811D1ADED00C04FD8D5CD:(.*)$') { 'Users: {0}' -f $matches[1] } elseif ($_ -match '^B:32:AA312825768811D1ADED00C04FD8D5CD:(.*)$') { 'Computers: {0}' -f $matches[1] } } 

这是相当低技术,但你可以创build一个用户远程使用net user testUser /add /domain和查询AD来找出它的创build位置。

您可以通过将testing计算机join到域中并以与用户相同的方式searchtesting计算机来执行相同的操作。

也许有些PowerShell voodoo可以用来查看容器属性,所以如果你得到比这更好的答案,我也不会感到惊讶。

 Get-ADDomain | select computerscont*