我目前正在研究重定向域上的默认用户和计算机 OU。
据我所知,这很容易实现使用redirusr
和reditcmp
。但我怎么能取回目前的状态?
答案1
从加载了 ActiveDirectory 扩展的 PowerShell 运行以下命令:
(get-adobject -filter 'ObjectClass -eq "domain"' -Properties wellKnownObjects).wellKnownObjects
然后,使用列表kb324949,您可以看到值已经更改为了什么。
答案2
在 PowerShell 中检索该信息的另一种方法是使用 .Net DirectorySearcher 类或如下所示的 PowerShell 的 [ADSISearcher] 类型加速器。虽然它需要输入更多内容并且阅读起来有点困难,但如果无法保证 Active Directory Web 服务可用,这种方法就派上用场了。它不太像“PowerShell”,但说明了一些有用的 PoSH/ADSI/LDAP 语法。
顺便说一句,我并不是在批评 longneck 的答案,只是指出另一种方法,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]
}
}
答案3
这是相当低技术的,但您可以远程使用并查询 AD 创建用户net user testUser /add /domain
以找出其创建位置。
您可以对测试计算机执行相同操作,将其加入域并按照与搜索用户相同的方式进行搜索。
您可能还可以使用一些 PowerShell 巫术来查看容器属性 - 因此如果您得到比这更好的答案,我不会感到惊讶。
答案4
Get-ADDomain | select computerscont*