Resultados incompletos ao consultar o Active Directory para membros do grupo em uma situação com relações de confiança

2

Estamos tentando consultar o Active Directory para obter uma lista de todas as máquinas que são membros de um grupo, junto com informações como atributos do OperatingSystem. Não podemos obter resultados para todos os membros do grupo.

Detalhes do ambiente:

  • Vários controladores de domínio, executando o Windows Server 2003 e o 2008 R2.
  • Vários domínios, com uma relação de confiança entre domínios.
  • Executando as consultas do AD de uma máquina com Windows Server 2008 R2.
  • A conta que está consultando o AD é "uma conta de administrador local, membro do domínio, com admins privs nesse servidor. "
  • Fomos informados de que algumas máquinas "são membros do grupo por meio de uma relação de confiança".

Nosso grupo de teste atual, "Group-99", possui duas máquinas: FOO10 e FOO11.

Quando consultamos os membros do grupo, recebemos o resultado esperado, uma lista de todas as máquinas do grupo:

PS > dsquery group -name "Group-99" | dsget group -members

"CN=FOO10,OU=Domain Controllers,DC=activedirdev,DC=widgetco,DC=com"
"CN=FOO11,OU=Portland,OU=Domain Controllers,DC=activedirdev,DC=widgetco,DC=com"

Em seguida, consultamos DNSHostName e OperatingSystem, mas só podemos receber resultados para uma das duas máquinas:

PS > dsquery * -filter "(&(objectClass=Computer)(objectCategory=Computer)(sAMAccountName=FOO11$))" -attr sAMAccountName operatingSystem
sAMAccountName    operatingSystem
FOO11$            Windows Server 2008 R2 Standard

PS > dsquery * -filter "(&(objectClass=Computer)(objectCategory=Computer)(sAMAccountName=FOO10$))" -attr sAMAccountName operatingSystem
PS >

Nenhum de nós é assistentes do Active Directory, por isso não temos certeza de onde está o problema. Ajustar a configuração do Active Directory não é possível.

Você pode nos ajudar a descobrir como obter as informações de que precisamos ou se é possível obtê-las?

Esclarecimento de acompanhamento: nosso resultado perfeito seria uma forma de emitir uma consulta que retornará resultados para todos os membros do grupo, independentemente do domínio em que estejam. Algo como:

PS > dsquery (stuff)
CN        operatingSystem
FOO10     Windows Server 2008 R2 Standard
FOO11     Windows Server 2003
    
por Ale Exc 21.02.2014 / 22:04

2 respostas

0

O objeto que você está consultando parece existir em outro domínio. Quando você executar o DSQuery sem especificar o servidor ou o domínio com o qual deseja entrar em contato, vinculará automaticamente ao domínio em que efetuou login. Este objeto pode estar em outro domínio.

Para obter o objeto ausente, tente

dsquery * -filter "(&(objectClass=Computer)(objectCategory=Computer)(sAMAccountName=FOO10$))" -attr sAMAccountName operatingSystem -d activedirdev.widgetco.com

Ref: link

    
por 21.02.2014 / 23:21
0

Como já foi observado pelo HopelessN00b, ter um commonName de FOO10 não significa necessariamente que o sAMAccountName é FOO10$ (embora seja muito provável).

Para descobrir se esse é o caso, recupere o objeto diretamente em vez de pesquisá-lo:

dsget computer "CN=FOO10,OU=Domain Controllers,DC=activedirdev,DC=widgetco,DC=com" -samid
    
por 21.02.2014 / 23:40