.someproperty%20n%C3%A3o%20mostrando%20resultado.png)
Estou tentando procurar propriedades individuais de um usuário AD, quando executo
(Get-ADUser $userName).$targetProperty
Não ganho nada quando corro
Get-ADUser $userName | select $targetProperty
Recebo a propriedade e um espaço em branco embaixo. MAS quando eu corro.
Get-ADUser $user -Properties *
Recebo a lista completa e quando olho para $ targetProperty, já existe um valor. Meu ambiente é 1 DC, é local e estou no modo Admin.
Responder1
Depende da propriedade alvo que você está tentando obter. Se não for uma das propriedades do conjunto padrão (aquelas que você obtém ao executar Get-ADUser testuser
), ela não estará no conjunto de resultados, portanto, você não poderá acessá-la em outro lugar do seu comando.
Aqui estão as propriedades padrão.
DistinguishedName : CN=Test User,CN=Users,DC=domain,DC=local
Enabled : True
GivenName : Test
Name : Test User
ObjectClass : user
ObjectGUID : 94916bd1-008e-409f-a1b3-eaXXXXXX266e
SamAccountName : TestUser
SID : S-1-5-21-23XXXXXX88-41XXXXX83-1941XXXX34-32584
Surname : User
UserPrincipalName : [email protected]
Digamos que a propriedade que você deseja seja Title
. Então seu primeiro comando é este:
(Get-ADUser testuser).Title
Title
não está no conjunto padrão de propriedades, portanto a parte entre parênteses não inclui uma Title
propriedade, portanto o resultado do comando combinado é nada.
Segunda tentativa:
Get-ADUser testuser | select Title
Isso fornece a palavra "Título" como cabeçalho da coluna, mas ainda não há valor para ela, porque a primeira parte do comando ainda não inclui uma Title
propriedade nos resultados.
Terceira tentativa:
Get-ADUser testuser -Properties *
Ah! Isso está chegando perto. Inclui a Title
propriedade, junto com um monte de outras com as quais você não se importa agora.
Quarta tentativa:
(Get-ADUser testuser -Properties *).title
É isso! Essa combinação obtém todas as propriedades do usuário (incluindo Title
) e mostra apenas a Title
propriedade.
Opcional:Você pode tornar isso um pouco mais rápido, não se preocupando em solicitar as mais de 100 propriedades fornecidas -Properties *
e obter apenas as propriedades padrão plus Title
, com isto:
(Get-ADUser testuser -Properties Title).Title
Responder2
Descobri que o seguinte me permite obter as informações, mas por que não estava funcionando com meus outros comandos?
(Get-ADUser $user -Properties *).$targetProperty