2009-02-16 8 views
0

J'utilise powershell pour extraire une liste des utilisateurs d'Exchange 2003 et basé sur la boîte aux lettres de l'utilisateur "LegacyDN", j'espérais utiliser une requête LDAP pour extraire leur propriété activesyncenabled (msExchOmaAdminWirelessEnable), description et office; Cependant, cela ne semble pas venir pour moi. des idées?powershell exchange 2003: interroger ActiveDirectory pour ActiveSync, Office et description?

voici comment je suis pour interroger les attributs AD:

$allusers = get-wmiobject -class exchange_mailbox -namespace root\microsoftexchangev2 -computername srv02 | select mailboxdisplayname, legacyDN 

foreach ($user in $allusers) 
{ 
$obj = new-object psobject 
$exchangever = "2003" 

$tmp = [adsi]("LDAP://" + $user.legacydn) 

$obj | add-member -membertype noteproperty -name "Display Name" -value $user.mailboxdisplayname 
$obj | add-member -membertype noteproperty -name "Office" -value $tmp.physicaldeliveryofficename 
$obj | add-member -membertype noteproperty -name "Description" -value $tmp.description 
$obj | add-member -membertype noteproperty -name "Activesync" -value $tmp.msExchOmaAdminWirelessEnable 

$allusersemail += $obj 

} 

$alluseremail | export-csv \\srv02\logs\test.csv 

Répondre

1

est ici une façon:

$ search = System.DirectoryServices.DirectorySearcher

$ search.filter = « (& (homeMDB = *) (objectcategory = user) (classe_classe = utilisateur)) "

$ props =" mailNickName "," displayName "," physicaldeliveryofficename "," descriptio n "," msExchOmaAdminWirelessEnable "

$ accessoires | foreach {[vide] $ search.PropertiesToLoad.Add ($ _)}

utilisateurs $ = $ search.findAll()

foreach ($ u utilisateurs $)

{

$ DisplayName = @ {name = "DisplayName"; expression = {$ u.properties.item ("DisplayName")}}

$ Office = @ {name = "Office"; expression = {$ u.properties. item ("physicaldeliveryofficename")}}

$ Description = @ {name = "Description"; expression = {$ u.properties.item ("Description")}}

$ Activesync = @ {name = "Activesync"; expression = {$ u.properties .item ("msExchOmaAdminWirelessEnable")}}

$ u | sélectionnez $ DisplayName, Bureau $, $ Description de, Activesync $

}

+0

est-il un moyen de le faire si vous venez de donner une guid de boîte aux lettres? – phill

+0

Je ne sais pas comment filtrer AD en utilisant mailboxGuid. –

Questions connexes