Listar todas as propriedades do usuário do AD com o powershell

1

Temos um antigo domínio do Win2k AD, que é migrado para servidores W2k3 e possui várias extensões de esquema (Exchange, msSFU e autodefinidas) do passado e de várias partes da floresta.

Pesquisando usuários funciona muito bem, eu recebo a lista completa de usuários. No entanto, se eu consultar os objetos de usuário, obtenho apenas uma lista incompleta de propriedades:

$user.properties.propertynames

entrega

objectClass
cn
distinguishedName
instanceType
whenCreated
whenChanged
uSNCreated
uSNChanged
name
objectGUID
userAccountControl
badPwdCount
codePage
countryCode
badPasswordTime
lastLogoff
lastLogon
pwdLastSet
primaryGroupID
objectSid
accountExpires
logonCount
sAMAccountName
sAMAccountType
objectCategory
isCriticalSystemObject
nTSecurityDescriptor

Esta resposta não possui algumas propriedades que o AD Explorer mostra.

Como posso listar todas as propriedades e valores que realmente existem? Alguma outra dica para uma ferramenta para conseguir isso além de Powershell?

Background: Precisamos verificar a consistência dos objetos do usuário. Parece que se o objeto foi criado na época com W2k, o usuário tem um conjunto mais completo de propriedades do que quando elas são configuradas em um W2k3 ADUC. Alguns problemas parecem surgir a partir disso, mas ainda não tenho certeza, e gostaria de verificar as propriedades do usuário.

Eu sei usar $ objSearcher.PropertiesToLoad.Add (). Mas isso não ajuda, pois também quero descobrir se existem propriedades desconhecidas ocultas em alguns objetos de usuário.

Alguns objetos de usuário antigos têm até 150 propriedades. Mas nem todos os usuários antigos têm o mesmo conjunto. Eu quero ter uma lista de quem tem o quê.

Como posso obter a lista total de propriedades disponíveis, que são usadas em qualquer objeto?

    
por Posipiet 10.06.2011 / 14:41

1 resposta

2

Existem muitas propriedades do sistema que podem tornar o exercício que você está pensando menos útil devido a uma quantidade significativa de dados irrelevantes. Talvez você possa usar o AD Explorer para identificar os atributos que parecem interessantes e usar o parâmetro -Properties para recuperá-los para todos os usuários.

Quando você recupera um objeto de usuário no AD, ele retorna apenas um subconjunto dos atributos do objeto. Você pode usar o parâmetro -Properties para forçar o usuário a recuperar outras propriedades. Por exemplo: get-aduser jjohnson -Properties pwdlastset adicionaria pwdlastset à lista de propriedades normalmente recuperadas pelo get-aduser para o usuário jjohnson.

    
por 10.06.2011 / 18:09